在从传输层(TCP)向网络层(IP)接收到一个段时,结果数据单元将是一个数据包。而当从传输层(UDP)接收用户数据报时,结果数据单元将是数据报?
答案 0 :(得分:8)
您将陷入详细信息...... 数据包和数据报并非完全明确的术语。我也认为你也在向后看事情。在传统网络中:
OSI stack实际上并没有真正用于实践。在大多数情况下,它已被Internet Protocol Suite取代。了解网络堆栈如何工作的最简单方法是购买"TCP/IP Illustrated: Volume 1"的副本,下载nice network capture utility,并观看一些互联网流量。您可以看到数据包是如何从物理层向上组装的。
答案 1 :(得分:0)
术语数据报通常被视为数据包的同义词,但存在一些细微差别。术语数据报通常保留用于不可靠服务的数据包,如果传递失败则无法通知发件人,而数据包一词适用于任何数据包,可靠与否。 数据报是提供快速且不可靠的服务(如UDP)的IP数据包,所有IP 数据包都是数据报; [4]但是, TCP层,即所谓的TCP段,有时是数据报的必要IP分片,[5]但这些被称为" 数据包&#34 ; [6]
[Emphasys补充]
答案 2 :(得分:-1)
您绝对需要熟悉“7层网络堆栈”。
它并不完全适用于TCP / IP,但它是理解任何“网络”协议(包括TCP / IP)的绝佳基础:
简短回答:
“数据包”是通过网络发送的内容。
对于TCP / IP,接收主机将数据包组装成“流”。
另一方面,对于UDP,接收主机将相同的数据包(或实际上是数据包)组装成“数据报”。
“数据包”是第3级(“网络层”)。
“Streams”和“datagrams”是4级(“传输层”)。
在TCP / IP的情况下,第7层直接访问“流”和“数据报”(“应用层”:包括HTTP / Web,SMTP /电子邮件,FTP /文件传输等)等)。
答案 3 :(得分:-1)
在从传输层(TCP)接收到网络层(IP)的段时,结果数据单元将是一个数据包。
没有
客户端可以看到TCP中唯一的接收单位是一个字节。 TCP段由一个或多个IP数据包组成,但所有应用程序都可以看到是一个字节流。在应用程序看到任何数据之前,任何和所有段和数据包边界都会丢失。你发送一些字节,你收到一些字节,并且分别发送和接收的数量之间不一定有很强的相关性,除了它们都加起来相同的流。
在UDP中,发送和接收的单位都是数据报。您发送一个数据报,如果它完好无损,您将收到包含相同字节和相同字节数的相同数据报。