1、OSI七层模型与TCP/IP四层模型?
答:OSI七层模型:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。
TCP/IP四层模型:网络接口层(物理层、数据链路层)、网际层、传输层、表示层 (会话层、表示层、应用层)。
2、网络四类地址的区间?
网络地址分为网络位和主机位。
A类地址:1.0.0.0 --- 127.255.255.255(127.0.0.1为回环地址)(ping通本地回环地址说明本机协议没问题)
B类地址:128.0.0.0 --- 191.255.255.255
C类地址:192.0.0.0 --- 223.255.255.255
D类地址:224.0.0.0 --- 239.255.255.255(广播地址)
3、TCP服务器、客户端创建流程
TCP服务器端创建流程:创建通信用文件描述符(socket)-->设置端口号和IP地址(为绑定做准备)-->绑定(bind)-->监听(listen)-->接受请求,建立连接(accept)-->发送与接收消息(send/recv)-->关闭文件(close)
TCP客户端创建流程:创建通信用文件描述符(socket)-->设置端口号和IP地址-->发起连接请求(connect)-->接受与发送消息(send/recv)-->关闭文件(close)
4、UDP服务器、客户端创建流程
UDP服务器端创建流程:创建通信用文件描述符(socket)-->设置端口号和IP地址(为绑定做准备)-->绑定(bind)-->接受和发送消息(sendto && recvfrom)-->关闭文件(close)
UDP客户端创建流程:创建通信用文件描述符(socket)-->设置端口号和IP地址-->接受与发送消息(sendto && recvfrom)-->关闭文件
5、TCP与UDP的区别?
(1)TCP是面向连接的协议,UDP是面向无连接的协议。
(2)TCP对系统资源要求较多,UDP对系统资源要求较少。
(3)TCP是数据流模式,UDP是数据报模式。
(4)TCP保证数据顺序及数据的正确性,UDP可能会丢包。
6、简述三次握手与四次挥手
在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接。
第一次握手:建立连接时,客户端发送SYN(SYN = j)包到服务器,并进入SYN_SEND状态,等待服务器的确认;
第二次握手:服务器收到SYN包,必须确认客户的SYN(ACK = j+1),同时自己也发送一个SYN包(SYN=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;
第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ACK=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。
7、四次挥手
四次挥手的过程(客户端或服务器均可主动发起挥手动作):
(1)客户端A发送一个FIN,用来关闭客户A到服务器B的数据传送。
(2)服务器B收到这个FIN,它发回一个ACK,确认序号为收到的序号加1。
(和SYN一样,一个FIN将占用一个序号)。
(3)服务器B关闭与客户端A的连接,发送一个FIN给客户端A。
(4)客户端A发回ACK报文确认,并将确认序号设置为收到序号加1.