基于tcp协议的网络通信设计与实现内容摘要:

7 层协议相比, TCP/IP 协议只有 4个层次。 通常说的 TCP/IP 是一组协议的总称, TCP/IP 实际上是一个协议族,包括 100 多个相互关联的协议,其中 IP(Inter Protocol, 网际协议 )是网络层最主要的协议;TCP(Transmission Control Protocol,传输控制协议 )和 UDP(User Datagram Protocol,用户数据报协议是传输层中最主要的协议 ),一般认为 IP、 TCP、 UDP 是最根本的三种协议,是其他协议的基础。 、 TCP—— 传输控制协议 面向连接的通信可以使用可靠通信,在这时候,第四层协议发送数据接收方的确认,如果未收到数据或者数据被损坏,则请求重新传输。 TCP 协议就使用这种可靠通信。 使用 TCP 协议的应用层协议包括 HTTP、 FTP、 SMTP 和 Tel 等。 TCP要求 在发送数据之前必须打开连接。 服务器应用程序必须执行一个称作被动打开( passive open)的操作,以利用一个已知的端口号创建一个链接,这是,服务器并不是对网络进行呼叫,而是侦听并等待引入的请求。 客户应用程序必须执行一个主动打开( active open),为此,它向服务器应用程序发送一个同步序列号( SYN)以标识连接。 客户应用程序可以将动态端口号作为本地端口使用。 服务器必须向客户发送一个确认( ACK)以及服务器的序列号( SYN)。 随后,客户回复一个 ACK,这样就建立了链接。 现在可以发送和接收消息了。 接收消息后,总是返回 ACK消息。 如果在收到 ACK之前发送方已经超时,则消息将被放到重发队列中以再次发送。 由于它的握手机制,所以 TCP 协议比较复杂并且费时,但此协议在处理数据时对数据包的传送有保障,从而使得在应用程序协议中不需要再包括该功能。 、 套接字 套接字这个术语并没有定义某个协议:它具有两层含义,但两者都与一个协议相关。 第一个含义是套接字编程 API,它最初由伯克利大学为 BSD UNIX 而创建。 BSD 套接字在经过修改后被用作 Windows 环境的编程接口(并且被命名为 WinSock)。 WinSock API 被包装在 命名空间的 .NET 类中。 Windows Sockets 是一个独立于协议的编程接口,用于编写网络应用程序。 套接字的第二层含义表示一个用于在进程间进行通信的终端。 在 TCP/IP 中,每个终端都与一个 IP 地址和一个端口号绑定。 我们必须对流式套接字和数据报套接字这两种类型进行区分。 流失套接字用 TCP/IP 协议来使用面向连接的通信;另一方面,数据报套接字用 UDP/IP来使用无连接通信。 系统框架 使用 T C P 连接I n t e rn e t传输隧道使用 T C P 连接I n t e rn e t传输隧道客户客户字节流字节流客户与客户传输流图构架 系统设计 利用 so cke t函数创建套接字将这个套接字绑定到。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。