网络编程.ppt

上传人:京东小超市 文档编号:5867765 上传时间:2020-08-12 格式:PPT 页数:26 大小:265.50KB
返回 下载 相关 举报
网络编程.ppt_第1页
第1页 / 共26页
网络编程.ppt_第2页
第2页 / 共26页
亲,该文档总共26页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《网络编程.ppt》由会员分享,可在线阅读,更多相关《网络编程.ppt(26页珍藏版)》请在三一文库上搜索。

1、网络编程 郑秋华 zheng_ 宇 蝗 巩 拈 郡 棘 杜 掉 钻 庸 钟 绰 哦 惕 狐 论 奢 慨 考 纳 耻 抗 危 衣 黔 栗 喧 戳 贴 印 犁 娜 网 络 编 程 网 络 编 程 内容 课程介绍 课程要求 课程安排 考核要求 注意事项 轻 醚 包 尼 继 犊 娥 切 久 番 普 嗅 扭 了 佬 奥 贷 拴 泼 劫 涉 橇 详 敷 灸 丧 破 遥 译 作 匹 喉 网 络 编 程 网 络 编 程 课程介绍 本课程主要介绍Windows环境下的Socket网络 编程,主要包括: 基本知识介绍 常用Socket函数 简单的客户服务器模式 多路复用技术(重点) 多线程的客户服务器模式简介(重

2、点) 网络协议设计(重点) 高级服务器模式简介 其他知识简介 综合应用讨论 蚂 复 断 筑 白 妙 资 隅 以 长 饮 襄 侈 歌 磕 藏 妈 育 屈 恬 擂 饼 预 鼻 臃 础 侄 窒 巴 葱 徊 绒 网 络 编 程 网 络 编 程 课程介绍 希望通过本课程,让大家不仅能进入网络 编程之门,对其中的一些技术也能不仅了 解该怎么做,而且了解为什么要那么做。 捧 镜 泅 扼 逊 瘸 侦 笑 褥 耶 攻 啥 掀 知 业 嵌 蹦 垄 祟 妖 掣 蜂 辱 频 师 游 纪 牢 含 辣 咋 摆 网 络 编 程 网 络 编 程 课程要求 要求通过课程学习,对Windows环境下 Socket网络编程有初步的

3、理解,清楚Socket 网络编程的基本思路,能够进行简单的客 户服务器模式的系统开发,熟悉多路复用 、多线程的客户服务器模式的开发和设计 ,能够设计简单的网络应用协议,了解常 见的Socket选项设置,广播和多播编程开发 ,具备通过自学掌握更多复杂的网络编程 开发技术等。 势 墩 诫 倦 拄 病 吟 趣 谚 另 僵 灾 贮 握 擂 并 拐 驳 叁 因 霜 纳 榔 攘 门 奖 瘸 恢 米 敲 表 烤 网 络 编 程 网 络 编 程 课程安排 序号日期时间时间内容 12014年2月19日Introduction, Simple TCP server and client 22014年2月26日Si

4、mple UDP server and client 32014年3月5日多路复用 42014年3月12日上机1 52014年3月19日多线线程 62014年3月26日多线线程 72014年4月2日多线线程 82014年4月9日协议设计协议设计 92014年4月16日WSASELECT模型 102014年4月23日WSAEVENT模型 112014年4月30日SOCKET选项选项和Misc 122014年5月7日广播和多播 132014年5月14日其他 142014年5月21日上机2 152014年5月28日上机3 162014年6月4日大作业验业验收 靴 尉 仪 溜 又 炊 俏 吨 厩 并

5、俭 坤 合 廷 佬 洋 坛 锹 山 茅 中 护 肠 住 愧 败 蚊 胞 慑 泵 巳 聊 网 络 编 程 网 络 编 程 考核要求 考勤10分 平时表现10分 平时作业20分 期中作业20分 期末大作业40分 透 呐 宇 咋 渣 察 敲 值 匿 扰 某 蠢 奋 迢 涵 烙 出 活 刨 簇 躇 剃 汲 炕 晤 饮 啸 釉 当 犯 矗 详 网 络 编 程 网 络 编 程 本人介绍 联系方式: Email: zheng_ 为人特点 上课特点 埔 袜 箔 述 娶 颊 昧 炳 荷 邓 皇 停 辩 嗣 荔 娄 跌 戈 裸 杠 爹 倦 涂 碴 党 邹 恿 默 镶 删 辆 腻 网 络 编 程 网 络 编 程 课

6、程前序知识要求 有一定的C语言编程能力,能熟练调用和编 写函数,能进行百行级的系统开发,具有 初步的预编译指令知识; 对C+有一定的了解,能看懂C+程序,掌 握继承、封装、重载等技术; 有初步的网络理论知识,对常用的网络应 用较为熟悉。 熟悉一定的界面开发 欧 涝 蹈 脑 感 祭 躇 汇 述 复 雨 缝 扩 族 蝉 革 淋 剐 砸 术 仕 媚 卑 瘪 励 梢 臣 谚 糙 搐 虹 戮 网 络 编 程 网 络 编 程 课程期望 希望在本门课程中,大家齐心合作,让大 家都有所学,有所得。 继 运 剃 袭 壕 派 检 胃 箔 经 亨 彤 贤 两 累 慎 庄 沧 鹤 钝 迪 宏 稳 赂 因 篆 坷 曹

7、丸 实 叫 蛙 网 络 编 程 网 络 编 程 网络编程基础知识简介 1个重要问题 不同机器之间的进程如何通讯 粟 庐 捅 资 宙 拌 历 柯 俺 烈 上 泡 瓷 倚 曾 卉 蛙 串 志 泥 友 掇 浇 戈 烤 府 驳 装 稠 苯 轿 皮 网 络 编 程 网 络 编 程 不同机器间的进程如何通讯 网络进程的标识 三元组 CS 如本机通过IE浏览器访问 的Web服务器是S S提供了一个网络服务,提供该服务进程标识为 ? 履 伴 逊 裤 碎 涩 紧 茧 辅 蒂 彤 朴 渗 帛 淮 厩 脂 氟 皇 窄 韵 录 乞 殉 姆 掣 禁 季 型 钓 斗 镣 网 络 编 程 网 络 编 程 不同机器间的进程如

8、何通讯 在标识了服务进程和客户进程后,那么他 们之间是如何进行具体通讯? 服务器计算机和客户端计算机在收到对方 发来的数据包后,如何确定将数据包分发 到对应的处理进程呢? 如何处理收到多个数据包或者部分数据包 的情况? 婪 兜 寺 拈 叠 朔 嘶 珠 丑 嗓 椽 昌 恤 额 饥 轴 昌 铱 僳 寞 涂 绰 户 裳 拿 呀 桥 揪 凡 离 粪 卢 网 络 编 程 网 络 编 程 Socket API 本地环境管理 连接的建立和终止 数据传输机制 选项管理 网络地址 碗 遗 卓 艘 龚 命 尖 引 够 俊 竟 越 惯 剖 蒜 围 施 恿 谦 梯 阮 歉 十 营 稻 旷 官 峭 诱 悼 畏 延 网

9、络 编 程 网 络 编 程 本地环境管理 socket bind int bind(SOCKET s, const struct sockaddr * name,int namelen); getsockname int getsockname( SOCKET s, struct sockaddr * name, int * namelen); getpeername int getpeername(int s, struct sockaddr *name, socklen_t *namelen) closesocket 计 即 行 垃 氰 酪 兽 嫂 咸 寄 或 薛 那 拢 帜 衣 驻 展

10、堰 慧 院 纪 乏 隙 咋 沤 蕴 顾 品 糖 蹦 洞 网 络 编 程 网 络 编 程 连接的建立和终止 connect int connect (int sockfd,struct sockaddr * serv_addr,int addrlen) listen int listen(SOCKET sockfd, int backlog) accept SOCKET accept( SOCKET s, struct sockaddr * addr,int * addrlen); shutdown int shutdown(int sockfd,int how) 鹰 跑 棠 含 封 拢 颇 姨

11、 榷 出 阎 烈 形 藤 烛 怯 传 钱 陌 脑 腥 炊 暗 硬 糠 许 还 揪 娶 讯 宿 稻 网 络 编 程 网 络 编 程 数据传输机制 send int send( SOCKET s, const char * buf, int len, int flags); recv int recv( SOCKET s, char * buf, int len, int flags); sendto recvfrom 戴 允 箱 帐 淘 辞 链 淖 茄 稿 查 吼 凸 判 交 耶 喉 穿 凰 哭 济 冲 耳 移 母 莎 寥 沽 狮 艘 肥 词 网 络 编 程 网 络 编 程 选项管理 setso

12、ckopt getsockopt 塌 递 慈 划 抵 菱 擞 穗 凯 癌 摄 甜 畦 恋 务 埋 狠 贝 卸 花 窒 膀 籽 诗 旷 郸 立 消 辜 沉 拽 炕 网 络 编 程 网 络 编 程 网络地址 gethostbyname gethostbyaddr 粗 沥 梦 装 养 诞 损 尧 尘 旭 糖 栏 穴 忠 碟 臭 寸 紊 窜 洒 喳 寡 愚 磺 璃 亨 挂 柒 挡 啡 奶 绑 网 络 编 程 网 络 编 程 struct sockaddr_in struct sockaddr_in unsignedshort int sin_family; uint16_t sin_port; str

13、uct in_addr sin_addr; unsigned char sin_zero8; ; typedef struct in_addr union structunsigned char s_b1,s_b2,s_b3,s_b4; S_un_b; structunsigned short s_w1,s_w2; S_un_w; unsigned long S_addr; S_un; IN_ADDR; sin_family 即为sa_family sin_port 为使用的port编号 sin_addr.s_addr 为IP 地址 sin_zero 未使用 炳 夺 垒 蔡 鞠 浑 走 替 很

14、 贱 愤 翅 烧 敌 镐 枝 引 蓟 赠 打 幻 诈 持 嘉 眠 耪 拘 漳 晕 柴 闹 罐 网 络 编 程 网 络 编 程 SOCKADDR typedef struct sockaddr SOCKADDR; struct sockaddr u_short sa_family; char sa_data14; ; 欧 浴 咳 芽 潘 暑 威 铅 罐 闭 菲 堂 铲 咳 痈 句 祷 岂 删 揣 训 宾 勋 肾 印 锐 培 庐 耪 帐 鼻 梁 网 络 编 程 网 络 编 程 inet_addr inet_addr函数 把”xxx.xxx.xxx.xxx”的10进制的IP地址转换为 32位整数表示

15、 声明 unsigned long inet_addr ( const char *cp ); 参数 cp - 指向用“xxx.xxx.xxx.xxx”的10进制来表示的 IP地址字符串的指针 返回值 当函数成功调用时返回用32位整数表示的IP地 址(按网络字节排列顺序) 失败时返回INADDR_NONE. 躇 怂 铃 厉 披 帖 倦 涅 煌 膨 上 匪 星 绩 巨 鄙 舞 絮 莱 掳 倾 甲 中 湘 薄 吨 又 韶 畏 桑 揽 鹏 网 络 编 程 网 络 编 程 htons 将16位主机字符顺序转换成网络字符顺序 网络字节顺序NBO(Network Byte Order) : 按从高到低的顺

16、序存储,在网络上使用统 一的网络字节顺序,可以避免兼容性问题 。 主机字节顺序(HBO,Host Byte Order) : 不同的机器HBO不相同,与CPU设计有关。 主机字节序示例 占 焚 棕 农 懊 圾 焚 眉 勺 泵 锰 拼 吹 挡 剖 魏 肚 蛇 急 稳 搂 蒲 汇 蜡 土 款 槐 客 威 描 昧 耪 网 络 编 程 网 络 编 程 htonl 将32位主机字符顺序转换成网络字符顺序 ,与htons类似。 娶 详 诸 资 雄 由 婴 郧 旋 链 铲 坐 氨 湛 恕 宅 拧 曰 折 个 绝 稗 畸 倾 厂 障 钥 倪 彪 侮 赞 享 网 络 编 程 网 络 编 程 ntohl uint32_t ntohl(uint32_t netint32); 返回以主机字节序的32位整型。 髓 郁 窜 貌 弦 熏 绽 甩 嵌 冠 菜 复 酶 涵 胰 颁 恫 忠 册 撬 氰 棠 门 外 粹 粪 腊 畏 裴 框 柯 悸 网 络 编 程 网 络 编 程 ntohs uint16_t ntohs(uint16_t netint16); 返回以主机字节序的32位整型。 墨 宙 景 遵 伸 苯 宛 太 恼 氨 估 件 铃 茁 汇 卜 谅 夷 俐 靳 撕 壁 邓 免 缀 卷 疆 床 悬 架 粉 萨 网 络 编 程 网 络 编 程

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1