第一节-TCP/IP协议-数据传输过程[2]
1个回答
展开全部
从应用层到达数据链路层,每一层都会对数据进行一次封装,并且加上自己的头部
应用程序使用send/write函数会把数据写入与TCP连接应对的TCP内核发送缓存区中。然后TCP会调用IP模块所提供的服务把TCP头部信息和TCP发送缓冲区中的数据封装在一起。
UDP的数据也是类似,但是UDP不会保存数据的副本,如果数据丢失了,应用程序则需要重新把数据从用户空间拷贝到UDP内核发送缓冲区中
数据经过网络层后封装成为IP数据包、最终经过数据链路层后封装成的数据成为帧。不同传输媒介有不同的帧类型。
当数据封装好了以后,则进行传输,当到达目的地时,则会由底向上传递,各层依次去处理属于该层要负责的数据。
因为ARP、IP、RARP都是使用帧来传数据,所以帧头的部分需要提供某个字段来区分它们。
同样的ICMP、TCP、UDP等协议都使用IP协议,所以IP数据包的头部也要采用16位的协议字段来区分它们。
TCP、UDP的数据包则通过16位的端口号来区别上层的应用程序,比如Http使用80端口。
应用程序使用send/write函数会把数据写入与TCP连接应对的TCP内核发送缓存区中。然后TCP会调用IP模块所提供的服务把TCP头部信息和TCP发送缓冲区中的数据封装在一起。
UDP的数据也是类似,但是UDP不会保存数据的副本,如果数据丢失了,应用程序则需要重新把数据从用户空间拷贝到UDP内核发送缓冲区中
数据经过网络层后封装成为IP数据包、最终经过数据链路层后封装成的数据成为帧。不同传输媒介有不同的帧类型。
当数据封装好了以后,则进行传输,当到达目的地时,则会由底向上传递,各层依次去处理属于该层要负责的数据。
因为ARP、IP、RARP都是使用帧来传数据,所以帧头的部分需要提供某个字段来区分它们。
同样的ICMP、TCP、UDP等协议都使用IP协议,所以IP数据包的头部也要采用16位的协议字段来区分它们。
TCP、UDP的数据包则通过16位的端口号来区别上层的应用程序,比如Http使用80端口。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
网易云信
2023-12-06 广告
2023-12-06 广告
信令SDK是一种软件开发工具包,旨在帮助开发者在应用程序中实现信令协议的通信功能。它主要提供了一系列函数、协议和工具,用于处理信令消息的生成、解析、传输和存储等操作。通过使用信令SDK,开发者可以更快速、便捷地实现信令通信功能,提高应用程序...
点击进入详情页
本回答由网易云信提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询