2024 网络编程面试题

3.会话层(Session)

4.传输层(Transport)

5.网络层(Network)

6.数据链路层(Data Link)

7.物理层(Physical)

2.TCP/IP五层模型

============

TCP/IP五层模型:

1.应用层(Application)、

2.传输层(Transport)、

3.网络层(Network)、

4.数据链路层(Data Link)、

5.物理层(Physical)。

3.三次握手与四次挥手

===========

第一次握手:

客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;

第二次握手:

服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;

第三次握手:

客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。

握手过程中传送的包里不包含数据,三次握手完毕后,客户端与服务器才正式开始传送数据。

理想状态下,TCP连接一旦建立,在通信双方中的任何一方主动关闭连接之前,TCP 连接都将被一直保持下去。

断开连接时服务器和客户端均可以主动发起断开TCP连接的请求,断开过程需要经过“四次握手”

第一次挥手:

客户端发送报文告诉服务器没有数据要发送了

第二次挥手:

服务端收到,再发送给客户端告诉它我收到了

第三次挥手:

服务端向客户端发送报文,请求关闭连接

第四次挥手:

客户端收到关闭连接的请求,向服务端发送报文,服务端关闭连接

4.TCP为什么三次握手不是两次握手,为什么两次握手不安全

=============================

为了实现可靠数据传输, TCP 协议的通信双方, 都必须维护一个序列号, 以标识发送出去的数据包中, 哪些是已经被对方收到的。

三次握手的过程即是通信双方相互告知序列号起始值, 并确认对方已经收到了序列号起始值的必经步骤

如果只是两次握手, 至多只有连接发起方的起始序列号能被确认, 另一方选择的序列号则得不到确认

5.为什么TCP是可靠的,UDP早不可靠的?为什么UDP比TCP快?

==================================

TCP/IP协议拥有三次握手双向机制,这一机制保证校验了数据,保证了他的可靠性。

U

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值