Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Networking 包头字段在二进制流中是如何排序的?_Networking_Encapsulation_Packet - Fatal编程技术网

Networking 包头字段在二进制流中是如何排序的?

Networking 包头字段在二进制流中是如何排序的?,networking,encapsulation,packet,Networking,Encapsulation,Packet,我刚刚更新了我的网络知识,遇到了一个关于数据包的问题(段、帧..其实并不重要) 互联网上有许多数据包或数据段头的示意图,它们都很容易理解。但这些字段是如何在流经电缆的二进制流中排序的?翻译器是如何计算出一个数据包已经结束,而另一个数据包刚刚开始接收1和0的 谢谢理解这需要理解 如果您想专门讨论通过电缆传输的数据,并假设您指的是以太网上的TCP/IP数据,那么以太网是第1层和第2层协议。数据的物理传输方式取决于它是全双工还是半双工,是8线、4线还是2线(尽管2线协议与EtherCAT一样合适),以

我刚刚更新了我的网络知识,遇到了一个关于数据包的问题(段、帧..其实并不重要)

互联网上有许多数据包或数据段头的示意图,它们都很容易理解。但这些字段是如何在流经电缆的二进制流中排序的?翻译器是如何计算出一个数据包已经结束,而另一个数据包刚刚开始接收1和0的


谢谢理解这需要理解

如果您想专门讨论通过电缆传输的数据,并假设您指的是以太网上的TCP/IP数据,那么以太网是第1层和第2层协议。数据的物理传输方式取决于它是全双工还是半双工,是8线、4线还是2线(尽管2线协议与EtherCAT一样合适),以及其他此类物理传输问题。通常,芯片位于电缆的两端,并向上传送第2层数据到某种类型的设备

无论如何,为了让侦听器知道数据包何时开始和结束,以太网协议定义了一个7字节的前导和帧开始分隔符以及一个4字节的帧检查序列。你可以阅读更多关于它的内容


然而,用于处理在CPU上运行的数据包的软件通常不会看到这一切。以太网帧将其有效载荷传递到缓冲区,在缓冲区中按顺序存储,直到被读取或覆盖。

简单地说,处理这些过程的协议之一是TCP(第4层)协议,它发送索引为0,1,2,3的分割数据,在接收端,它显然可以按顺序3,1,0,2或顺序1,2,0,3或任何其他方式接收,但TCP按索引追加数据除外

我用外行的观点解释


关于OSI参考模型和网络基础知识的研究

如果协议是TCP,它将处理订单并请求未到达的订单。如果它是UDP,您就失去了它。