网络编程一

网络模型

应用层

传输层:TCP

网络层:IP

网络接口层

linux如何收发网络包?

TCP:保证可靠性,流量控制维护状态信息

作用:

特点:

头部格式

序列号,确认应答号,控制位

TCP连接

TCP四元组

最大TCP连接数

文件描述符限制

内存限制

linux中查看TCP状态

netstat    -napt

TCP连接建立

三次握手和状态变迁

过程:

为什么是三次,不是二次?四次?

1.初始化socket,序列号和窗口大小,并建立连接。

2.避免历史连接

3.同步初始序列号(为什么TCP每次初始化序列号不同?)

序列号作用:

4.避免资源浪费:建立多个冗余的无效连接,造成资源浪费

为什么IP分片之前还需要TCP分片

丢失三次握手分别会发送什么?

第一次丢失?

第二次丢失?

第三次丢失?

什么是 SYN 攻击?如何避免 SYN 攻击?

TCP 连接断开

TCP 四次挥手过程和状态变迁

为什么挥手需要四次?

丢失四次挥手分别会发送什么?

第一次丢失?

第二次丢失?

第三次丢失?

第四次丢失?

为什么TIME_WAIT等待的时间是2MSL?

为什么需要TIME_WAIT状态?

1.防止连接中的数据

2.保证被动关闭连接的一方,能能被正确关闭

TIME_WAIT过多危害?

如何优化?

建立了连接,但客户端出现故障怎么办?

保活机制

避免历史连接

为什么TCP每次初始化序列号不同?

初始序列号如何随机产生

TCP机制

重传,滑动窗口,流量控制,拥塞控制。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值