波大计算机网络home work3
问题及解答:
1.端口(port)和套接字(socket)的区别是什么? 2.是否TCP和UDP都需要计算往返时间RTT? 3.在TCP传送数据时,有没有规定一个最大重传次数?
4.为什么TCP在建立连接时不能每次都选择相同的、固定的初始序号?
5.TCP连接很像一条连接发送端和接收端的双向管道。当TCP在连续发送报文段时,若要管道得到充分的利用,则发送窗口的大小应怎样选择? 6.TCP发送方和接收方都需要滑动窗口吗?各有什么作用?
7.滑动窗口的窗口大小可以动态调整吗?调整窗口大小可以起到什么作用? 8.在UDP协议中需要滑动窗口协议吗?为什么?这样有什么好处有什么坏处?
1.端口(port)和套接字(socket)的区别是什么?
答:套接字包含了端口,因为套接字= (IP地址,端口号)。套接字是TCP连接的端点。套接字又称为“插口”。
但我们已经讲过,套接字(socket)有多种意思。当使用API时,套接字往往被看成是操作系统的一种抽象,这时,套接字和一个文件描述符是很相似的,并且是应用编程接口API的一部分。套接字由应用程序产生,并指明它将由客户还是服务器来使用。当应用进程创建一个套接字时,要指明该套接字使用的端口号。
端口则是应用层服务的的一种代号,它用来标志应用层的进程。端口是一个16 bit的整数。各种服务器使用的端口号都是保留端口号,以便使客户能够找到服务器。例如万维网服务器使用的端口号是80。
在发送数据时,应用层的数据通过端口向下交付到运输层。在接收数据时,运输层的数据通过适当的端口向上交付到应用层的某个应用程序 2.是否TCP和UDP都需要计算往返时间RTT?
答:TCP有的,UDP没有的,UDP发出去其实就不管了,它是需要在应用软件(应用层)来做一个数据传送保障的机制的。重发也是通过软件端实现。TCP本身协议就具有保障数据的功能。
3.在TCP传送数据时,有没有规定一个最大重传次数?