2.1 网络是个什么玩意儿
略
2.1.1 什么是网络
各自为政的『网络硬件与软件』技术发展: Ethernet & Token-Ring
以『软件』技术将硬件整合: ARPANET & TCP/IP
没有任何王法的因特网: Internet
软硬件标准制定的成功带来的影响: IEEE 标准规范
2.1.2 计算机网络组成组件
Node 节点
具有IP的设备
Server 服务器主机
提供数据以"响应"给用户的主机
Workstation 工作站 & Client 客户端
主动发起联机去"要求"数据
Network Interface Card,NIC 网络卡
有网卡才能配置IP
网络接口
利用软件设计出来的网络接口,提供IP
网络形态或拓扑 Topology
节点在网络上面的链接方式
ex 星型联机
Router 路由器 & Gateway 网关
具有两个以上的网络接口,可以连接两个以上的网段的设备
2.1.3 计算机网络区域范围
LAN 局域网络
WAN 广域网
2.1.4 计算机网络协定:OSI 七层协定
节点如何沟通信息?
通过标准协议
OSI 七层协议模型
Open System Interconnection
在发送数据的主机经过自第七层到第一层的加工包装后, 原始的信息"Hello World"经过层层加工, 成为光纤电缆可以传输的 0与1
传输过去的0与1,在接受数据这一方,再经过同样的第一层到第七层的解析,还原成原始信息"Hello World"
每一层都只能解析出或添加属于自己层的表头数据
1.物理层
Physical Layer
传送/接收位串
2.数据链结层
Data-Link Layer
MAC (Media Access Control) frame 数据包裹
LLC (logical link control)将packet转化为MAC格式
3.网络层
Network Layer
IP(Internet Protocol) & Route
4.传送层
Transport Layer
发送端与接收端的联机技术(TCP,UDP技术)
5.会谈层
Session Layer
确定两个地址之间网络服务建立联机的确认
6.表现层
Presentation Layer
将本地端应用程序的数据格式转换成为网络的标准格式
7.应用层
Application Layer
将数据接收或传送给应用程序,展示给用户
2.1.4 计算机网络协定: TCP/IP
由OSI七层协议简化而来
TCP/IP的运作方式
1.从输入网址回车开始:
网址 和 相关数据 被浏览器打包,向下传给 TCP/IP的应用层
2.应用层:
通过HTTP通讯协议打包,并给个应用层的表头,再向传送层丢去
3.传送层:
由于HTTP为可靠联机,因此将该数据丢入TCP封包内,并给予一个TCP封包的表头,向网络层丢去
4.网络层:
将TCP包裹包进IP封包里,再给与一个IP表头,向链接层丢去;
5.链接层:IP会依据CSMA/CD标准,包裹到 MAC 帧,并给于MAC表头,再转成位串,传输过去
2.2TCP/IP的链接层相关协议
WAN与LAN的硬件
CSMA/CD以太网络协议
MAC 帧格式
(丢包 掉帧)
2.2.1 广域网使用的设备
- 传统电话拨号:透过 ppp 协议
- 整合服务数字网络 ISDN Integrated Services Digital Network
- 非对称数位用路回路 (Asymmetric Digital Subscriber Line, ADSL):透过 PPPoE (PPP over Ethernet) 协定
- 电缆调制解调器 (Cable modem)
2.2.2 局域网使用的设备-以太网络
- 以太网络的速度与标准
- 以太网络的网络线接头 (跳线/并行线)
2.2.3 以太网络的传输协议: CSMA/CD
MAC 地址 即网卡出厂时 唯一 硬件地址
网卡网络数据传输 按照CSMA/CD 标准
这里的Hub集线器是一种网络共享媒体.网络共享媒体在单一事件点内,仅能被一部主机使用.
从A到D的传输过程
1.Carrier Sence 监听媒体使用情况
确认网络媒体没人使用,发送帧
2.Multiple Access 多点传输
A 主机送出的数据会被集线器复制一份,并传输到所有链接到该集线器上的主机上,但目标是D主机,其他主机会把该 帧 丢弃,而D则会抓下来处理
3.Collision Detection 碰撞测试
该帧数据有检测能力,若其他主机也在同时间发送数据,那么A与B 送出的数据碰撞在一块,该帧损毁,那么A与B就会各自随机等待一个时间.然后重新透过第一步再传送一次该帧数据
四个问题的原理
-集线器灯闪个不停,但我的主机明明没有是用网络:
-我的计算机明明没有被入侵,为何我的数据湖北隔壁计算机窃取:
-既然共享媒体只有一个主机可以使用,为何大家可以同时上网:
-帧要多大比较好?能不能修改帧?
2.2.4 MAC 的封装格式
上图中的目的地址与来源地址指的就是网卡卡号 (hardware address, 硬件地址),我们前面提到,每一张网卡都有一个独一无二的卡号, 那个卡号的目的就在这个讯框的表头数据使用到啦!硬件地址最小由 00:00:00:00:00:00 到 FF:FF:FF:FF:FF:FF (16 进位法), 这 6 bytes 当中,前 3bytes 为厂商的代码,后 3bytes 则是该厂商自行设定的装置码
byte与bit
ifconfig
以上均为局域网的情况
我的数据要由计算机 A 通过 B 后才送达 C ,而 B 计算机有两块网络卡,其中 MAC-2 与 A 计算机的 MAC-1 互通,至于 MAC-3 则与 C 计算机的 MAC-4 互通。但是 MAC-1 不能与 MAC-3 与 MAC-4 互通,为啥?因为 MAC-1 这块网络卡并没有与 MAC-3 及 MAC-4 使用同样的 switch/hub 相接嘛!所以,数据的流通会变成:
先由 MAC-1 传送到 MAC-2 ,此时来源是 MAC-1 而目的地是 MAC-2;
B 计算机接收后,察看该讯框,发现目标其实是 C 计算机,而为了与 C 计算机沟通, 所以他会将讯框内的来源 MAC 改为 MAC-3 ,而目的改为 MAC-4 ,如此就可以直接传送到 C 计算机了。
也就是说,只要透过 B (就是路由器) 才将封包送到另一个网域 (IP 部分会讲) 去的时候, 那么讯框内的硬件地址就会被改变,然后才能够在同一个网域里面直接进行讯框的流通啊!
帧内容 最小 46bytes 最大 1500 bytes
2.2.5 MTU 最大传输单位
一般 1500bytes
老的 1492bytes
IP封包是可以进行拆解的,然后再放入MAC中
2.2.6 集线器 交换器与相关机制
-共不共享很重要 集线器还是交换器
如何避免之前集线器发生碰撞的情况?
使用非共享媒体的交换器switch
交换器 (switch) 等级非常多,我们这里仅探讨支持 OSI 第二层的交换器。
交换器与集线器最大的差异,在于交换器内有一个特别的内存, 这个内存可以记录每个 switch port 与其连接的 PC 的 MAC 地址,所以,当来自 switch 两端的 PC 要互传数据时,每个讯框将直接透过交换器的内存数据而传送到目标主机上! 所以 switch 不是共享媒体,且 switch 的每个埠口 (port) 都具有独立的带宽喔!
举例来说,10/100 的 Hub 上链接 5 部主机,那么整个 10/100Mbps 是分给这五部主机的, 所以这五部主机总共只能使用 10/100Mbps 而已。那如果是 switch 呢?由于『每个 port 都具有 10/100Mbps 的带宽』, 所以就看你当时的传输行为是如何啰!举例来说,如果是底下的状况时,每个联机都是 10/100 Mbps 的。
A 传送到 D 与 B 传送到 C 都独自拥有 10/100Mbps 的带宽,两边并不会互相影响! 不过,如果是 A 与 D 都传给 C 时,由于 C port 就仅有 10/100Mbps ,等于 A 与 D 都需要抢 C 节点的 10/100Mbps 来用的意思。 总之,你就是得要记得的是,switch 已经克服了封包碰撞的问题,因为他有个 switch port 对应 MAC 的相关功能, 所以 switch 并非共享媒体喔!同时需要记得的是,现在的 switch 规格很多, 在选购的时候,千万记得选购可以支持全双工/半双工,以及支持 Jumbo frame 的为佳!
-什么是全双工/半双工(full-duplex,half-duplex)
-自动协调速度机制(auto-negotitation)
-自动分辨网络线跳线或并行线 (Auto MDI/MDIX)
-讯号衰减造成的问题
-结构化布线