自学内容网 自学内容网

网络基础擅长组建乐队

让我们荡起双桨

来说说网络吧

现有计算机要进行协作,网络的产生是必然的

局域网:计算机数量更多了, 通过交换机和路由器连接在一起

广域网:将远隔千里的计算机都连在一起

 

交换机路由器等设备就应运而生

计算机是人的工具,人要协作,所以网络的产生是必然的!

协议

协议本质是一种约定

 计算机之间的传输媒介是光信号和电信号

通过 "频率" 和 "强弱" 来表示 0 和 1 这样的信息. 要想传递各种不同的信息, 就需要约定好双方的数据格式

只要通信的两台主机约定好协议就可以了?

不行,语言不同订好了协议也是无法正常通信的

完善的协议需要更多更细致的规定并且让参与的人都要遵守

任何问题都可以通过添加一层软件层来解决

软件分层有什么好处啊?

两个人打电话在逻辑上是两个人直接沟通

在物理上是两个电话在说话

只要软件进行分层就能模块化解耦合,让软件维护的成本更低

先描述再组织,分层最大的好处在于 "封装" -->  面向对象

计算机生产厂商有很多 

计算机操作系统, 也有很多

计算机网络硬件设备, 还是有很多

如何让这些不同厂商之间生产的计算机能够相互顺畅的通信?

就需要有人站出来, 约定一个共同的标准, 大家都来遵守, 这就是网络协议

 OSI七层模型

 OSI(Open System Interconnection,开放系统互连)七层网络模型称为开放式系统互联参考模型, 是一个逻辑上的定义和规范;

把网络从逻辑上分为了7层. 每一层都有相关、相对应的物理设备,比如路由器,交换机;

OSI 七层模型是一种框架性的设计方法,其最主要的功能使就是帮助不同类型的主机实现数据传输;

它的最大优点是将服务、接口和协议这三个概念明确地区分开来,概念清楚,理论也比较完整. 通过七个层次化的结构模型使不同的系统不同的网络之间实现可靠的通讯;

但是, 它既复杂又不实用; 所以我们按照TCP/IP四层模型来理解

我那亲爱的TCP/IP协议啊

TCP/IP协议

 TCP/IP是一组协议的代名词,它还包括许多协议,组成了TCP/IP协议簇

TCP/IP通讯协议采用了5层的层级结构,每一层都呼叫它的下一层所提供的网络来完成自己的需求.

物理层: 负责光/电信号的传递方式. 比如现在以太网通用的网线(双绞 线)、早期以太网采用的的同轴电缆 (现在主要用于有线电视)、光纤, 现在的wifi无线网使用电磁波等都属于物理层的概念。物理层的能力决 定了最大传输速率、传输距离、抗干扰性等. 集线器(Hub)工作在物理层.

数据链路层: 负责设备之间的数据帧的传送和识别. 例如网卡设备的驱动、帧同步(就是说从网线上检测 到什么信号算作新帧的开始)、冲突检测(如果检测到冲突就自动重发)、数据差错校验等工作. 有以太 网、令牌环网, 无线LAN等标准. 交换机(Switch)工作在数据链路层.

网络层: 负责地址管理和路由选择. 例如在IP协议中, 通过IP地址来标识一台主机, 并通过路由表的方式规 划出两台主机之间的数据传输的线路(路由). 路由器(Router)工作在网路层.

传输层: 负责两台主机之间的数据传输. 如传输控制协议 (TCP), 能够确保数据可靠的从源主机发送到目标 主机.

应用层: 负责应用程序间沟通,如简单电子邮件传输(SMTP)、文件传输协议(FTP)、网络远程访问 协议(Telnet)等. 我们的网络编程主要就是针对应用层.

 上面的都是书上的内容

这不就是计算机里的八股文吗,,,

我们还是回来看看为什么要有TCP/IP协议吧

在学生时代谈恋爱通信的成本很低

我们来举个例子

我们假设振振子是一个甜美可人的小男孩,而逍遥是一位帅气潇洒的男高中生,逍遥和振振子这样金童玉童郎才郎貌,在认识之后很快就谈上了恋爱,振振子是逍遥的意难平,每次逍遥都习惯等在振振子的宿舍楼下,当他看到振振子笑容满面的朝他跑过来要抱抱时,他感觉世界都美好了,少年的心事总是懵懂易知,他们之间甜甜蜜蜜,即使偶尔因为吃醋或者意见不和而吵架,也会因为对方一点点小动作而重归于好,这就是学生时代,通信的成本很低,低到写一张小纸条,一个隔着走廊的眼神,他们都能明白对方的心意

 

泪目,,,,,,,,

但是学生时代总是短暂的,他们总要有毕业的时候,他们毕业之后又该如何联系呢?

在之前振振子生气的时候,逍遥只需要买一杯奶茶等在振振子宿舍楼下就好了,但是现在距离带给他们的只有更多的矛盾,已经不是那个走两步就能看见对方的时候了,逍遥总不能坐一班火车赶到只为了给振振子送一杯奶茶(有何不可),这样通信的成本就变高了,距离太远了,逍遥(主机A)要先把买的礼物交给快递小哥(路由器),那么世界上那么多男孩子,怎样定位找到振振子呢?还有一点需要注意,发送数据不是目的,只是手段,逍遥给振振子买奶茶不是目的,哄振振子开心才是目的,奶茶只是一种手段

只是单纯距离变长了就衍生出了这么多问题,异地恋难啊

为了解决这样的问题,我们就定下了各种各样的协议

这是一种解决方案

单纯因为通信距离变长

操作系统都不一样,但是上层的 标准都一样,所以各个主机可以互相通信

最重要的两层在双方操作系统中以同样的标准实现

 TCP/IP是传输层和网络层的两个很重要的协议,所以把这系列的协议统称为TCP/IP协议

对于一台主机, 它的操作系统内核实现了从传输层到物理层的内容;

对于一台路由器, 它实现了从网络层到物理层;

对于一台交换机, 它实现了从数据链路层到物理层;

对于集线器, 它只实现了物理层;

所谓的协议就是通信双方都认识 的结构化的数据类型

我们发快递要有快递单,对8?

快递单你收到的时候能确定它是你的快递

快递单是约定

协议也是这样的,拿C语言表示的话它就是一个结构体

两台主机在同一个局域网能够直接通信

网络传输基本流程

同一个网段内的两台主机进行文件传输

两台计算机通过TCP/IP协议通讯的过程:

跨网段的主机的文件传输. 数据从一台计算机到另一台计算机传输过程中要经过一个或多个路由器.

数据包封装和分用

不同的协议层对数据包有不同的称谓,在传输层叫做段(segment),在网络层叫做数据报 (datagram),在链路层叫做帧(frame).

应用层数据通过协议栈发到网络上时,每层协议都要加上一个数据首部(header),称为封装

(Encapsulation).

首部信息中包含了一些类似于首部有多长, 载荷(payload)有多长, 上层协议是什么等信息.

数据封装成帧后发到传输介质上,到达目的主机后每层协议再剥掉相应的首部, 根据首部中的 "上层协议字段" 将数据交给对应的上层协议处理.

 数据封装的过程:

 数据分用的过程:

网络中的地址管理 

IP地址

IP地址是在IP协议中, 用来标识网络中不同主机的地址

对于IPv4来说, IP地址是一个4字节, 32位的整数

我们通常也使用 "点分十进制" 的字符串表示IP地址, 例如 192.168.0.1

用点分割的每一个数字表示一个字节, 范围是 0 - 255(豪德)

MAC地址

MAC地址用来识别数据链路层中相连的节点

长度为48位, 及6个字节. 一般用16进制数字加上冒号的形式来表示(例如: 08:00:27:03:fb:19)

在网卡出厂时就确定了, 不能修改. mac地址通常是唯一的(虚拟机中的mac地址不是真实的mac地址, 可能会冲突; 也有些网卡支持用户配置mac地址)

这就是临界资源啊得斯

以太网中任何时刻只允许一台机器向网络中发送数据,如果有多台同时发送,会发生数据干扰,我们称之为数据碰撞

所有发送数据的主机要进行碰撞检测和碰撞避免

在没有交换机的情况下,一个以太网就是一个碰撞域

局域网通信的过程中,主机对收到的报文确认是否是发给自己的,是通过目标mac地址判定

同层之间都认为自己在和对方的同层协议在直接通信

数据在网络中发送的时候,一定要最终在硬件上跑

除了应用层,每一层协议都必须解决一个问题:自己的有效载荷,应该交给上层的哪一种协议(分用)

网络层向上看到的数据都是一样的,都至少是IP报文

IP可以屏蔽底层网络的差异,所有的网络都是IP网络

IP地址和MAC地址之间有什么关系捏

举个例子吧,我们假设励志轩是从东土大唐来的一名僧人,他要去西天取经,从长安来,到西天去,始发站:长安,第一站:车迟国,到了车迟国后,墨墨酱告诉励志轩下一站去女儿国是西天取经的标准路线,于是励志轩欣然前行,到了女儿国,碰到了身在女儿国的燃燃子,于是燃燃子告诉励志轩下一站是火焰山,励志轩继续旅程,而在这个过程中,从长安来,到西天去就属于是IP地址,车迟国,女儿国,火焰山就属于是mac地址

所以IP是最终目标

Mac是下一个目标

好捏网络的基础就是这样

十月一的假期给我一种

我要腐烂在这里的感觉

但是我又觉得腐烂在哪也不能在这儿腐烂

怪怪的


原文地址:https://blog.csdn.net/chestnut_orenge/article/details/142682859

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!