理论
物理层:功能,在物理连接上传输二进制比特流,定义机械、电气、功能及规格的特性
机械特性:接口插件形状、尺寸…
电气特性:二进制bit流信号电平高低、阻抗等
功能特性:多条信号线的功能定义,一般分成数据线、控制线、、地线;
规程特性:各信号线的工作规则和时序
数据链路层:功能链路管理、帧传输、流量控制、差错控制;
帧:封装了一定数据,具严格逻辑性,并且高度优化了的包;
帧的组成:首尾标志01 111 110,0比特插入/删除技术,地址字段A,控制字段C,数据信息字段Z,帧校验字段FCS
MAC:Media Access Control
网络层:路由选择,流量控制
网络层的流量限制:限制进入分组交换网的数据量;
设备:物理层,中继器,信号复制放大、调整等功能,以加大信号传输距离;
数据链路层,网桥,交换机
集线器:
把一个端口上收到的数据向所有端口分发;
扩展方式:
堆叠:共享带宽,某一时刻只有一对端口传输数据,故会减少平均带宽;使用背板,逻辑上成为一个单独的设备;
级联:uplink口,逻辑上还是多个设备;
收发器:
用于将计算机连接到不同的传输介质
网卡
功能:封装帧,处理帧;
中继器Repeater,
接收、复制、传送、放大电路上的信号,物理上两个或多个网段;
网桥Bridge,隔离子网,局域网内的通信被隔离;
交换机:
背部总线,内部交换矩阵,所有端口挂接在背部总线上;
交换,指按照通信两端传输信息的需要,用人工或设备自动完成信息传输的方法,把要传输的信息送到符合要求的相应路由的技术
同一时间可进行多个端口对间的数据传输
根据数据包的MAC,找到拥有该MAC的网卡挂在哪个端口,然后把数据直接送到该端口;如果不存在则广播;
同一端口可挂接多个mac地址——这样,端口上可以接hub
堆叠:使多台交换机逻辑上成为一个设备;
Virtual Lan:把一台交换机的几个端口分成一组,成为一个Vlan,交换机隔离VLan之间的广播数据;——
Vlan划分方式:端口式、Mac地址、IP地址方式、策略服务方式
第三层交换机:具备子网互通能力,适用于有多个子网且子网间需要互通的场合;
Router:
连接多个逻辑上分开的网络(子网或单独的网络)子网间转发数据,通过路由协议交换网络拓扑结构信息,依之动态生成路由表;
路由表:
目的子网(或地址) 子网掩码 网关 标志 接口
201.66.37.0 255.255.255.0 201.66.37.12 U/H/G
将所有发往“目的子网”的数据,通过“接口”发送;如果标志为G,则发送到“网关”,否则直接发送到主机。
同一个接口可发往多个目的子网,而对于主机的网卡,拥有数据“本地子网及网关”,所有非本地子网的数据都将发给网关;一个网卡只有一个网关,怎么理解?
U:up状态
路由表的一个例子:
目的地址 掩码 网关 标识 MSS 接口名
127.0.0.1 255.0.0.0 0.0.0 .0 UH 3984 LO
167.102.1.0 255.255.255.0 0.0.0 .0 U 1500 ETH0
0.0.0 .0 0.0.0 .0 167.102.1.1 UG 1500 ETH0
动态路由表:Route定期向相邻Route广播自身的路由表信息,这样对方都获得这些信息后,就知道可以通过它可到达的那些子网,从而更新自己的路由表项。
标志:H表示目的地址是一个主机;G到目的地址需通过网关;H与G并非对立的两面。
网桥:
扩展:网络距离
过滤:隔离网络之间不必要的数据
转发:将一个网段的数据转发往另一网段
自学习能力:在收到数据时,记下源地址及数据来源的lan
问题:
1, TCP,有格式的数据只传输了一半怎么办:对方需判断收到的数据是否是完整的数据块;
2, 多个线程向同一个Socket写有格式的数据,怎样避免数据块写乱的?
3, TCP并不能保证应用层成功写入缓冲区的数据成功传输到目的方,这造成的问题如:应用无法知道自己下发的命令对方是否已经执行,即使对方有确认也不行,因为确认可能发不回来。怎么办?
4, 局域网,物理层概念,一个物理广播包能到达的区域;子网,IP层概念,一个IP广播包能到达的区域;