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

1. tcp协议

可靠的连接

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

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

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

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

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

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

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

对于(b), 为了让旧的连接在网络中消失,需要考虑极端情况。
HostLast 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地址只能对应一个端口。

相关推荐
三品吉他手会点灯6 小时前
C语言学习笔记 - 44.运算符和表达式 - 运算符2 - 除法与取余运算符
c语言·开发语言·笔记·算法
2601_colin6 小时前
Codex插件全流程实战指南
开发语言·经验分享·笔记·微信开放平台
疯狂打码的少年7 小时前
输入输出控制方式:DMA(直接存储器存取)
网络·笔记
cuso4win7 小时前
Feed 流面试笔记
笔记·面试·职场和发展
GNG9 小时前
《终身成长》读书笔记
笔记·学习
快乐肚皮11 小时前
【无标题】
服务器·网络·tcp/ip
Cloud_Shy61811 小时前
解读《Effective Python 3rd Edition》:从练气到老魔(第三章 Item 21 - 24)
开发语言·人工智能·笔记·python·迭代器模式
nnsix12 小时前
Unity HybirdCLR 简单了解 笔记
笔记
飞Link13 小时前
【TCP\UDP与可靠传输】UDP 的“简单粗暴”和它真正适用的场景
网络·网络协议·tcp/ip·udp
weixin_5206498713 小时前
通信与TCP核心知识
服务器·网络·tcp/ip