以太网是一套包含了物理层及数据链路层的协议,通过这套协议使得局域网内能够完成物理层及数据链路层的通信。
适配器
又称为网络接口卡NIC(Network Interface Card),在适配器上有处理器和存储器(包括RAM和ROM)。
(适配器和网卡的结构和功能基本相同,不过网卡是独立器件,而适配器是集成到主板上的。)
- 适配器和局域网之间的通信通过电缆或双绞线以串行方式进行,而适配器与计算机之间的通信则是通过计算机主板上的I/O总线以并行传输方式进行。因此,适配器需要进行数据串行传输和并行传输的转换。
- 网络上的数据率和计算机总线上的数据率并不相同,需要适配器对收发的数据包进行缓存,调节速率。
- 适配器接收和发送各种帧时不使用计算机的CPU。
- 当适配器收到有差错的帧时,就把这个帧丢弃而不必通知计算机。
- 当适配器收到正确的帧时,它就使用中断程序来通知该计算机并交付协议栈中的网络层。
- 当计算机要发送IP数据报时,就由协议栈把IP数据报向下交给适配器,组装成帧后发送到局域网。
总线网络
总线结构是使用同一媒体或电缆连接所有端用户的一种方式,也就是说,连接端用户的物理媒体由所有设备共享。
编码
以太网发送的数据都是使用曼彻斯特编码的信号。
控制——CSMA/CD
- 在同一时间,总线上只允许一台计算机发送数据。
- 电磁波在1km电缆的传播时延约为5us。
- 在总线上的计算机只要没有检测到有其他计算机在发送数据,自己就可以开始发送数据。
由以上三点,得出总线上计算机之间可能发生冲突,即在同一时间,两台设备都在发送数据。因此,使用CSMA/CD(载波监听多点接入/碰撞检测)协议解决此问题。
- 不管在发送前,还是在发送中,每个站都必须不停地检测信道。
- 在发送前检测信道,当信道空闲时,发送数据。
- 在发送过程中检测信道,即适配器边发送数据边检测信道上的信号电压的变化情况,如果几个站同时在总线上发送数据,信号电压的变化幅度将会因互相叠加而增大,此时,适配器立即停止发送,然后等待一段随机时间后再次发送。
- 当发送数据的站一旦发现了碰撞时,除了立即停止发送数据外,还要继续发送32比特或48比特的认为干扰信号。
- 以太网还规定了帧间最小间隔为9.6us,相当于96比特时间。这是为了使刚刚收到数据帧的站的接收缓存来得及清理,做好接收下一帧的准备。
关于等待的随机时间
以太网规定了一个最短帧长64字节,即512bit。如果要发送的数据非常少,那么必须加入一些填充字节。对于10Mb/s以太网,发送512bit的时间间隔要51.2秒。