通信软件设计方法-第四讲-基于tcp-ip与的主机到主机通信.ppt

通信软件设计方法-第四讲-基于tcp-ip与的主机到主机通信.ppt

  1. 1、本文档共78页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于主机的通信 服务者进程 SOCKET层 SOCKET层 服务者进程A 复制创建 A主机 C主机 服务者进程B Socket() connect() write() close() Socket() bind() listen() accept() read() close() TCP TCP TCP对等协议 00 6666 6666 6666 客户进程 7676 客户/服务器模型 B主机 LINUX进程和程序 进程创建:fork , clone, vfork 父子进程共享资源的形式 a.不共享(fork时缺省) b.部分共享 c.完全共享(线程) 进程的创建 LINUX进程和程序 示例4-fork实例 #include stdio.h Int myvar = 0; void main() { int pid; pid = fork(); //system call if (pid 0 ) { //error occurred printf(“fork failed.”); exit(-1); //system call } else if (pid == 0 ) { //child process printf(“child process executing…\n”); myvar = 1; } else { //parent process wait(); //system call, wait for children completion printf(“child complete.”); myvar ++; printf(“father,myvar=%d”,myvar); exit(0); } } 小于0 等于0 大于0 E 子进程 父进程 主机到主机的通信软件 主机之间的文件拷贝 TCP协议分层结构 TCP上进程通信模式 TCP-SOCKET函数 主机之间文件拷贝示例程序 第四讲 基于TCP-SOCKET的通信程序 SOCKET系统调用 系统调用 功能 使用者 Socket(format, type, protocol) 获得一个SOCKET 客户、服务者 bind(sd, address, length) SOCKET和address绑定 服务者 listen(sd, qlength) 设置倾听 服务者 accept(sd, address, addrlen) 接受SOCKET请求 服务者 connect(sd, address, length) 请求一个SOCKET连接 客户 send(sd, msg, length, flags) 向SOCKET发送数据 客户、服务者 recv(sd, buf, length, flags) 从SOCKET接收数据 客户、服务者 write(sd, buf, len) 向SOCKET写数据 客户、服务者 read(sd, buf, len) 从SOCKET读数据 客户、服务者 shutdown(sd, mode) 关闭SOCKET 客户、服务者 close(sd) 释放SOCKET 客户、服务者 第四讲 基于TCP-SOCKET的通信程序 read(…) socket(…) 若需要就重复 write(…) close(…) 客户 connect(…) 基于主机的通信 找座位 拨号呼叫 说话 听话 挂机 socket(…) bind(…) accept(…) 无限制重复 进程 close(…) listen(…) fork(…) write(…) read(…) close(…) 若需要就重复 主服务器 close(…)接受 从属服务器 基于主机的通信 服务器 找座位 设置服务类型 监听 接收呼叫 找服务员 新服务员 关闭监听 新服务员 听话 新服务员 说话 挂机 服务员退出 read(…) socket(…) bind(…) accept(…) 无限制重复 socket(…) 若需要就重复 write(…) 进程 close(…)接受 close(…) 客户 请求 响应 listen(…) fork(…) connect(…) write(…) read(…) close(…)监听 若需要就重复 连接请求 主服务器 close(…)接受 从属服务器 基于主机的通信 服务器 上节课讲了什么? TCP/IP的地址 IP地址,主机地址,

文档评论(0)

180****6388 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档