liunx网络编程(1)

1. 简述TCP/IP协议

  TCP/IP是网络中使用的基本通信协议,TCP/IP实际上是一组协议,它包括上百个能完成各种功能的协议,而TCP协议和IP协议是保证数据完整传输的的两个基本重要协议。通常说TCP/IP Internet协议簇,而不只是TCP IP协议。

 

 

2. 点分十进制表示法是什么?

  互联网上的每个接口必须有唯一的Internet 地址,长度为32位。这些32位的地址通常写成4个十进制的数,其中每个整数对应一个字节。这种表示方法称作点分十进制表示法。

 

 

3. 简述InterNIC  IP 地址的分类?

  InterNIC 由三部分组成:注册服务、目录和数据库服务、以及信息服务。

  IP 地址分为三类:单播地址、广播地址以及多播地址。

扫描二维码关注公众号,回复: 2444537 查看本文章

单播:主机之间一对一的通讯模式,网络中的交换机和路由器对数据只进行转发,不进行复制;

广播:主机之间一对所有的通讯模式,网络对其中每一台主机发出的信号都进行无条件复制并进行转发,所有主机都可以接收到所有信息;

组播:主机之间一对一组的通讯模式,也就是加入了同一个组的主机可以接收到此组内的所有信息,网络中交换机和路由器只向有需求者复制并转发其所需数据;

 

 

 

4. TCP/IP作用于OSI模型的哪几层?

TCP/IP协议并不完全符合OSI的七层参考模型。传统的开放式系统互连参考模型,是一种通信协议的7曾抽象的参考模型,其中每一场执行某一特定任务。该模型的目的是使各种硬件在相同的层次上相互通信。这7层是:物理层,数据链路层,网络层,传输层,会话层,表示层和应用层。而TCP/IP通信协议采用了4层层级结构,没一场都呼叫它的下一层所提供的网络来完成自己的需求。这4层分别是:应用层,传输层,互联网络层,网络接口层。

 

 

5. 应用协议有什么特征

 

  1.既可以是用户编写的应用,也可以是TCP/IP产品所带的标准应用。

  2.它们使用UDP或者TCP作为传输机制。

  3.大多数应用使用客户/服务器交互模型。


6.为什么在SocketTCP建立连接协议是三次握手,而关闭连接却是四次握手呢?

这是因为服务端的LISTEN状态下的SOCKET当收到SYN报文的建连请求后,它可以把ACKSYNACK起应答作用,而SYN起同步作用)放在一个报文里来发送。但关闭连接时,当收到对方的FIN报文通知时,它仅仅表示对方没有数据发送给你了;但未必你所有的数据都全部发送给对方了,所以你可以未必会马上会关闭SOCKET,也即你可能还需要发送一些数据给对方之后,再发送FIN报文给对方来表示你同意现在可以关闭连接了,所以它这里的ACK报文和FIN报文多数情况下都是分开发送的。

 

6.在TCP连接的终止(四次握手释放)时为什么TIME_WAIT状态还需要等2MSL后才能返回到CLOSED状态?

这是因为虽然双方都同意关闭连接了,而且握手的4个报文也都协调和发送完毕,按理可以直接回到CLOSED状态(就好比从SYN_SEND状态到ESTABLISH状态那样);但是因为我们必须要假想网络是不可靠的,你无法保证你最后发送的ACK报文会一定被对方收到,因此对方处于LAST_ACK状态下的SOCKET可能会因为超时未收到ACK报文,而重发FIN报文,所以这个TIME_WAIT状态的作用就是用来重发可能丢失的ACK报文。

猜你喜欢

转载自blog.csdn.net/ys5858588/article/details/78740843