HCIA笔记3--TCP-UDP-交换机工作原理

1. tcp协议

可靠的连接

1.1 报文格式
1.2 三次握手
1.3 四次挥手

为什么TIME_WAIT需要2MSL的等待时间?
(a) 为了实现可靠的关闭
(b)为了让过期的报文在网络上消失

对于(a), 假设host发给server的last ack丢了。
server收不到ACK,就会重发FIN报文。

为了让host可以接收到重传的FIN报文,就需要有TIME_WAIT状态。

那么这个时间一定为2MSL吗?

这取决于server端的RTO超时重传时间。
RTO > 2MSL, 那么2MSL时间就不够;
RTO < MSL, 那么MSL的时间就足够。

因此只有当MSL<= RTO <= 2MSL时,才会考虑2MSL。

对于(b), 为了让旧的连接在网络中消失,需要考虑极端情况。
Host的Last ACK经过MSL才到达server, 而恰好此时server重传了一个FIN报文。而这个报文经过MSL才到达host; 因此需要2MSL才能关闭。

1.4 窗口机制
1.5 序列确认
1.6 超时重传
1.7 网页通信原理

以访问主机A访问百度网页为例

  1. dns协议将域名解析为百度ip
  2. 封装tcp连接请求,跨网段dmac为网关mac。
    dport:80
    sport:15102
    sip:IP_A
    dip:IP_BAIDU
    smac:mac_A
    dmac: mac_gate
    ether type:0x0800
  3. 百度网页服务器发出响应
    dport:15102
    sport:80
    sip:IP_BAIDU
    dip:IP_A
    smac:mac_BAIDU
    dmac: mac_A
    ether type:0x0800
  4. 主机封装http请求在tcp数据中发给百度服务器
  5. 百度服务器收到http请求,产生http响应。
  6. 主机浏览器解http响应,显示在主机上。

2.udp协议

无连接,适合于流媒体。

2.1 报文格式

3 交换机工作原理

(1) 交换机收到广播报文后执行泛洪行为;

泛洪:除了向收到该数据口的其他所有商品复制一份相同报文。

(2) 交换机有自己的端口转发表,其中的表项是mac:交换机端口;交换机根据端口转发表进行转发。如果表项中没有对应的mac, 交换机会进行泛洪。

(3) 交换机会用收到的报文来更新自己的端口转发表,即smac:交换机端口 表项的更新。

(4) 交换机会将收到和发送为同一端口的数据帧丢弃

交换机的一个端口可对应多个mac地址。

一个mac地址只能对应一个端口。

相关推荐
海绵宝宝转agent37 分钟前
learn-claude-code第1-5章开源学习笔记分享
人工智能·笔记·python·学习
91刘仁德3 小时前
HTTP协议详解:从URL到HTTP服务器的完整实战
服务器·网络·笔记·网络协议·http
柳鲲鹏6 小时前
老电脑X99安装WIN11 26H2总结、问题解决办法汇总
笔记
sunoo-2299 小时前
【ARM嵌入式学习笔记第十天】i.MX6ULL eLCDIF控制器驱动RGB LCD全解析(硬件原理+寄存器配置+裸机代码)
arm开发·笔记·学习
听风若依10 小时前
数据在内存中的存储-纸面笔记整理
c语言·笔记
xiaominngtongxue10 小时前
从中职技能节看实训教学的组织逻辑
笔记
杨逢昌工厂6S管理11 小时前
109-杨逢昌车间管理负熵循环:三环体系持续输出负熵的机制解析
经验分享·笔记·职场和发展·学习方法
inferno11 小时前
SVN学习笔记(二)
笔记·学习·svn
海绵宝宝转agent12 小时前
leetCode100算法开源笔记分享
笔记·算法