目录
1.计算机网络背景
1.1网络发展
局域网和广域网
1.2 协议
2.网络协议初识
2.1协议分层
2.2OSI七层模型
2.3 TCP/IP 五层(或四层)模型
网络和操作系统之间的关系
2.4重谈协议 -- 计算机的视角,如何看待协议?
2.5 网络传输基本流程
网络传输流程图
数据包封装和分用
3.网络中的地址管理
3.1认识IP地址
3.2认识MAC地址
结论:
计算机体系结构本质也可以被看做是一个小型网络。计算机与计算机之间也是用“线”连接起来的。与其说两台计算机通信,本质上其实也是通过“线”链接起来。不过是“线”长了一点(网线,无限LAN)。
那么我们一般一台计算机内,把外设和内存之间的“线”称作IO总线。CPU和内存之间的“线”称作系统总线,我们常见的有32位/64位。
那么我们此时需要面对一个问题,在主机内,“线”比较短;跨主机,“线”比较长。而当“线”比较短时,数据之间会发生信号干扰;而“线”比较长时,数据的可靠性就降低了,以及效率变低,以及存在寻找对方的问题。
计算机网络,根据其规模可分为WAN(Wide Area Network,广域网)和LAN(Local Area Network,局域网)。
局域网LAN:计算机数量更多了,通过交换机和路由器链接在一起。(一栋楼或大学校园中有限的,狭小的,区域内网络)
广域网WAN:将远隔千里的计算机都连在一起;
“协议” 是一种约定。这种约定使那些由不同厂商的设备、不同的CPU以及不同的操作系统组成的计算机之间,只要遵循相同的协议就能够实现通信。两台计算机必须能够支持相同的协议,并遵循相同协议进行处理,这样才能实现相互通信。
思考:只要通信的两台主机,约定好协议就可以了么?
通信协议设计指标的OSI参考模型。这一模型将通信协议中必要的功能分成了7层。通过这些分层,使得那些比较复杂的网络协议更加简单化。
但是由于OSI七层模型既复杂又不实用,因此我们经常使用TCP/IP四层模型
TCP/IP是一组协议的代名词,它还包括许多协议,组成了TCP/IP协议簇
TCP/IP通讯协议采用了5层的层级结构,每一层都呼叫它的下一层所提供的网络来完成自己的需求。
由于物理层我们考虑的比较少,因此很多时候也可以称为TCP/IP四层模型。
一般而言:
但是并不绝对,很多交换机也实现了网络层的转发,很多路由器也实现了部分传输层的内容(比如端口转发)
TCP/IP协议和操作系统的关系是:操作系统内部,有一个模块,就叫做TCP/IP协议,网络协议栈是隶属于OS的!
那么两台主机之间进行通信的时候,同层协议都认为自己在和对方直接通信!
举个例子,我们在网上购买一个鼠标。你和卖家沟通好,买了一个鼠标,实际上快递员给你的是一个包裹,里面有鼠标。
实际上,快递员多给了我们一些东西!快递单。这个快递单上填的一些数据。这些数据不是给你用的,是给快递公司用的。快递单多出来的这些数据是快递公司和快递点和快递小哥之间的协议!
为了维护协议,一定要在被传输的数据上新增其他数据。这个新增的其他数据我们叫做协议数据。
同一个网段内的两天主机进行文件传输。
我们把每一层要交付给下一层的数据,给他添加上本层“多出来的协议数据”拼接在原始数据的开头叫做报头.
跨网段的主机的文件传输,数据从一台计算机到另一台计算机传输过程中要经过一个或多个路由器。
下图为数据封装的过程
下图为数据分用的过程
IP协议有两个版本,IPv4和IPv6,我们凡是提到IP协议,如果特殊说明的,默认都是值IPv4
每一台主机都要有唯一的标识,就是该主机对应的MAC地址!
任何一台主机,在任何时刻都可以随时发消息。我们把这种局域网的情况叫做 碰撞域 -- 无法准确的听到对应的消息 -- 每一台主机也能识别发生了碰撞(碰撞检测) -- 碰撞避免 -- 如果没人说话我再说话
在云服务器下查看MAC地址
ifconfig 可以查看MAC地址
ether:以太
其中“从哪儿来” -> "到哪里去" -- 对应IP 地址 ;"上一站从哪儿来"-- "下一站到哪儿去" 对应的是MAC地址。
MAC地址用来在局域网中标定主机的唯一性
IP地址在广域网中(公网),标定主机的唯一性。
(本篇完)