鸟哥的 Linux 私房菜笔记 TCP/IP 的链结层相关协议
2014-09-28 22:51
525 查看
CSMA/CD (Carrier Sense Multiple Access with Collision Detection)
1.监听媒体使用情况 (Carrier Sense):A 主机要发送网络封包前,需要先对网络媒体进行监听,确认没有人在使用后, 才能够发送出讯框;
2.多点传输 (Multiple Access):A 主机所送出的数据会被集线器复制一份,然后传送给所有连接到此集线器的主机! 也就是说, A 所送出的数据, B, C, D 三部计算机都能够接收的到!但由于目标是 D 主机,因此 B 与 C 会将此讯框数据丢弃,而 D 则会抓下来处理;
3.碰撞侦测 (Collision Detection):该讯框数据附有检测能力,若其他主机例如 B 计算机也刚好在同时间发送讯框数据时, 那么 A 与 B 送出的数据碰撞在一块 (出车祸) ,此时这些讯框就是损毁,那么 A 与 B 就会各自随机等待一个时间, 然后重新透过第一步再传送一次该讯框数据。
跨过不同的网域 ,那么来源与目的的硬件地址就会跟着改变了
1.先由 MAC-1 传送到 MAC-2 ,此时来源是 MAC-1 而目的地是 MAC-2;
2.B 计算机接收后,察看该讯框,发现目标其实是 C 计算机,而为了与 C 计算机沟通, 所以他会将讯框内的来源 MAC 改为 MAC-3 ,而目的改为 MAC-4 ,如此就可以直接传送到 C 计算机了
为什么主要量最小要 46 最大为 1500 bytes 呢?
讯框内的数据内容最大可达 1500bytes 这我们现在知道了,那为何要规范最小数据为 46bytes 呢?这是由于 CSMA/CD 机制所算出来的! 在这个机制上面可算出若要侦测碰撞,则讯框总数据量最小得要有 64bytes ,那再扣除目的地址、来源地址、检查码 (前导码不算) 后, 就可得到数据量最小得要有 46bytes 了!也就是说,如果妳要传输的数据小于 46byes ,那我们的系统会主动的填上一些填充码, 以补齐至少 46bytes 的容量才行!
交换器
交换器内有一个特别的内存, 这个内存可以记录每个 switch port 与其连接的 PC 的 MAC 地址,所以,当来自 switch 两端的 PC 要互传数据时,每个讯框将直接透过交换器的内存数据而传送到目标主机上!switch 已经克服了封包碰撞的问题,因为他有个 switch port 对应 MAC 的相关功能, 所以 switch 并非共享媒体喔!
现在的 switch 规格很多, 在选购的时候,千万记得选购可以支持全双工/半双工,以及支持 Jumbo frame 的为佳!
1.监听媒体使用情况 (Carrier Sense):A 主机要发送网络封包前,需要先对网络媒体进行监听,确认没有人在使用后, 才能够发送出讯框;
2.多点传输 (Multiple Access):A 主机所送出的数据会被集线器复制一份,然后传送给所有连接到此集线器的主机! 也就是说, A 所送出的数据, B, C, D 三部计算机都能够接收的到!但由于目标是 D 主机,因此 B 与 C 会将此讯框数据丢弃,而 D 则会抓下来处理;
3.碰撞侦测 (Collision Detection):该讯框数据附有检测能力,若其他主机例如 B 计算机也刚好在同时间发送讯框数据时, 那么 A 与 B 送出的数据碰撞在一块 (出车祸) ,此时这些讯框就是损毁,那么 A 与 B 就会各自随机等待一个时间, 然后重新透过第一步再传送一次该讯框数据。
跨过不同的网域 ,那么来源与目的的硬件地址就会跟着改变了
1.先由 MAC-1 传送到 MAC-2 ,此时来源是 MAC-1 而目的地是 MAC-2;
2.B 计算机接收后,察看该讯框,发现目标其实是 C 计算机,而为了与 C 计算机沟通, 所以他会将讯框内的来源 MAC 改为 MAC-3 ,而目的改为 MAC-4 ,如此就可以直接传送到 C 计算机了
为什么主要量最小要 46 最大为 1500 bytes 呢?
讯框内的数据内容最大可达 1500bytes 这我们现在知道了,那为何要规范最小数据为 46bytes 呢?这是由于 CSMA/CD 机制所算出来的! 在这个机制上面可算出若要侦测碰撞,则讯框总数据量最小得要有 64bytes ,那再扣除目的地址、来源地址、检查码 (前导码不算) 后, 就可得到数据量最小得要有 46bytes 了!也就是说,如果妳要传输的数据小于 46byes ,那我们的系统会主动的填上一些填充码, 以补齐至少 46bytes 的容量才行!
交换器
交换器内有一个特别的内存, 这个内存可以记录每个 switch port 与其连接的 PC 的 MAC 地址,所以,当来自 switch 两端的 PC 要互传数据时,每个讯框将直接透过交换器的内存数据而传送到目标主机上!switch 已经克服了封包碰撞的问题,因为他有个 switch port 对应 MAC 的相关功能, 所以 switch 并非共享媒体喔!
现在的 switch 规格很多, 在选购的时候,千万记得选购可以支持全双工/半双工,以及支持 Jumbo frame 的为佳!
相关文章推荐
- 鸟哥的 Linux 私房菜笔记 TCP/IP 的网络层相关封包与数据
- 百度笔试题2005题目大致是这样的: 第一部分选择题: 有几道网络相关的题目,巨简单,比如第一题是TCP、RIP、IP、FTP中哪个协议是传输层的......。有一道linux的 chown使用题目。其他的全是数据结构的题目!什么链,表
- linux网络编程的一些基础知识--TCP协议相关
- TCP/IP学习笔记之三 --- IP: 网际协议
- TCP-IP详解卷一:协议 笔记
- Linux邻居协议 学习笔记 之四 通用邻居项创建、查找、删除等相关的函数
- Linux笔记_网络_TCP/IP
- 网络基础-linux鸟哥的私房菜服务器篇02(阅读笔记)
- 鸟哥的 Linux 私房菜第14章-Linux账号关了与ACL权限设定 学习笔记
- Linux netfilter 学习笔记 之七 ip层netfilter的连接跟踪模块的概念及相关的数据结构分析
- 鸟哥的 Linux 私房菜第11章-认识与学习 BASH 学习笔记
- 鸟哥linux私房菜第6章笔记
- 鸟哥的 Linux 私房菜第12章-正规表示法与文件格式化处理 学习笔记
- TCP/IP 协议基本知识笔记
- 连上Internet-linux鸟哥的私房菜服务器篇04(阅读笔记)
- TCP/IP学习笔记之六 --- ICMP: Internet控制报文协议
- TCP/IP 中相关协议的 RFC
- Linux系统使用笔记(文件权限与目录配置)--鸟哥的私房菜
- 常见网络协议相关总结socket, TCP/IP
- 鸟哥的私房菜笔记之linux中的在线求助