IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 计网络——历史,OSI/RM模型,TCP/IP简介 -> 正文阅读

[网络协议]计网络——历史,OSI/RM模型,TCP/IP简介

计算机网络

一、 计算机网络的历史

第一代:50年代中至60年代初,以单计算机为中心的联机系统

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RFBa03Vb-1627961186541)(/Users/acetian/Library/Application Support/typora-user-images/image-20210728160224635.png)]

在计算机内部增加了通信功能,把远程的输入输出设备通过通信线路直接和计算机的主机相连,用户在终端输入信息的同时,主机也能处理信息,最后再将处理的结果通过通信线路回送给远程用户

第二代:60年代中至70年代初。计算机与计算机互联网络:主机既做数据处理,又做通信,出现不同的网络体系结构的模型。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hdzwFtYS-1627961186557)(/Users/acetian/Library/Application Support/typora-user-images/image-20210728161731992.png)]

第三代:70年代中至80年代末,计算机网络进入标准化发展
  1. ARPANET的标准协议:

    • 用于计算机之间的数据传输;
    • 能够连接不同类型的计算机;
    • 所有的网络结点都同等重要;
    • 必须有冗余的路由;
    • 网络结构尽可能地简单,但能非常可靠地传送数据。

    由于技术上的不足,使得具有相同厂家,相同型号的计算机之间可以进行数据通信,但是不同厂家,不同型号的计算机无法进行数据通信。

  2. TCP/IP协议

    • 正是由于TCP/IP网络通信协议的出现,使得不同计算机之间得以实现数据通信,为计算机网络的进一步发展奠定了基础。
    • 基于TCP/IP的4.2 BSD(Unix系统)
    • 不同网络之间的通信
  3. ISO的OSI/RM规范

第四代:(90年代至今)国际化的互联网的诞生与发展

由于ARPANET网络的维护费用日以高昂,把ARPANET分成了两个网络:MILNET(军网),ARPANET(民网)

  • 1990年,由NSF将ARPANET民网改名为Internet,随后很多公司、企业加入
  • WWW概念提出
  • Mosaic的WWW客户程序
  • PPP使得家庭用户可方便访问Internet

二、OSI/RM模型

简介:

1984年,ISO推出因特网的协议规范OSI/RM(Open Systems Interconnection/Reference Model)

ISO:国际标准化组织

OSI/RM:开放系统互连参考模型

为开放式互连信息系统提供了一种功能结构的框架

OSI/RM模型结构:
  • 应用层 Application
  • 表示层 Presentation
  • 会话层 Session
  • 传输层 Transport
  • 网络层 Network
  • 数据链路层 Data Link
  • 物理层 Physical
  1. 物理层:只负责传输0 1 二进制比特流

    功能:

    • 为数据链路层提供服务,从数据链路层接收数据,并按规定形式的信号和格式将数据发送。
    • 向数据链路层提供数据(把比特流还原为数据链路层可以理解的格式)
  2. 数据链路层:负责将上层数据封装成帧

    :数据链路层完成从物理层到网络层的过度、准备工作

    功能:

    • 传输管理:为网络层提供低出错率、高可靠性的数据链路
    • 流量控制:协调主机和通信设备之间的数据传输率
  3. 网络层:负责路由寻址和广播

    功能:

    • 路由选择与中断
    • 控制分组传送系统的操作
    • 控制流量,以防网络过于拥挤
    • 建立和撤销网络连接
    • 根据传输层的要求来选择服务
  4. 传输层: 负责建立一个可靠的端到端的链接,包括数据核对和初步整理。

    功能:

    • 建立、维护和撤销传输连接——端到端的连接
    • 控制流量,差错控制(使高层收到的数据几乎完整无差错)
    • 选择合适的网络层服务以实现其功能
    • 提供数据的编号、排序拼接以及重同步功能
  5. 会话层:负责建立维护拆除会话,为端系统的应用程序之间提供了对话控制机制。

    数据传输的“中间商”角色,负责数据传输的“售后服务”。

    功能:

    • 提供两进程之间建立、维护和结束会话连接的功能
    • 管理会话
    • 同步数据

    注意:传输层和会话层一般结合使用

  6. 表示层:表示数据形式,完成对传输数据的转化

    功能:

    • 代表应用层协商数据表示
    • 完成对传输数据的转化,如格式化、加/解密、压缩/解压
  7. 应用层:所有应用程序的网络在此展开,确定进程之间通信的性质,以满足用户的需要。

    功能:

    • 提供OSI用户服务,如事务处理、文件传输、数据检索、网络管理、加密。
计算机网络体系结构通信原理包括两方面:

一是数据通信原理

二是对等会话原理

  1. 数据通信原理

    发送端自上而下传输(直到物理层),接收端自下而上传输(直到发送端发起通信的层次)

  2. 对等会话原理

    发送端和接收端只有在对等层才可以进行通信,不同层次传输的数据格式不一样:

    • 应用层、表示层和会话层以报文方式传输
    • 传输层以报文或者报文分段方式传输
    • 网络层以分组方式传输
    • 数据链路层以帧方式传输
    • 物理层以比特流方式传输

    发送端每经过一层(物理层除外)都要在原数据上进行协议封装,即最前面加装一个本层所使用协议的协议头;接收端每经过一层都要对原数据进行协议解封装,即去掉原数据最前面的上层协议头

    OSI/RM数据通信原理图

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2KUysSWm-1627961186561)(/Users/acetian/Library/Application Support/typora-user-images/image-20210729165334481.png)]

三、TCP/IP简介

TCP/IP概述

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nRaplfUy-1627961186567)(/Users/acetian/Library/Application Support/typora-user-images/image-20210729170040896.png)]

网络接口层

功能

  • 在物理连接(网线和电脑之间)之上,实现逻辑链路(用到的协议)的连接(拨号连接)

  • 接口卡(网卡):具有物理地址,即MAC地址

  • SLIP(Serial line Internet Protocol)协议

    • 在串行线路上封装IP数据报
    • 用于拨号连接
    • 缺点:没有差错校验机制
  • 差错校验机制:每一端必须知道对方的IP地址,没有办法把本端的IP地址通知给另一端;如果一条串行线路用于SLIP,那么它不能同时使用其他协议。

  • 数据报:通过网络传输的数据的基本单元,它携带了要从计算机传递到目的的计算机信息。

  • 数据包:是TCP/IP协议通信传输中的数据单位,单个信息被划分为多个数据块,这些数据块被称为包。

  • 路由:路由器从一个接口上接收到数据包,根据数据包的目的地址进行定向并转发到另一个接口的过程。

  • PPP(Point to Point Protocol)协议

    • 用于串行与并行线路上的拨号连接
    • 解决SLIP存在的问题
  • ARP(Address Resolution Protocol)协议

    是根据IP地址获取物理地址的一个TCP/IP协议。

    • MAC,每个网卡都有的唯一的硬件地址

      每个网卡的硬件地址都是由厂商所提供,而且每个地址都是唯一的,在网络上不允许有重复的硬件地址出现。

    • IP地址对应到MAC

      通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。

  • RARP(Reverse Address Resolution Protocol)协议

    MAC到IP地址

IP地址与MAC地址

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zsaM9j18-1627961186569)(/Users/acetian/Library/Application Support/typora-user-images/image-20210730164850619.png)]

网络互联层

  • 功能

    在不同网络之间进行路由寻址、传递数据报

  • IP(Internet Protocol)协议

    无连接、不可靠的协议

    负责在主机之间寻址

    设定路由

  • ICMP(Internet Control Message Protocol)协议

    报告错误(网络的错误检测,主机故障等)

    控制消息

    Ping程序

TCP/IP网络互联层

TCMP:在主机与路由器之间传递控制信息。ICMP协议是一种面相无连接的协议,用于传输出错报告控制信息。

它是一个非常重要的协议,它对于网络安全 具有极其重要的意义。

ICMP提供一致易懂的出错报告信息。发送的出错报文返回到发送原数据的设备,因为只有发送设备才是出错报文的逻辑接受者。发送设备随后可根据ICMP报文确定发生错误的类型,并确定如何才能更好地重发失败的数据包。但是ICMP唯一的功能是报告问题而不是纠正错误,纠正错误的任务由发送方完成。

我们在网络中经常会使用到ICMP协议,比如我们经常使用的用于检查网络通不通的Ping命令(Linux和Windows中均有),这个“Ping”的过程实际上就是ICMP协议工作的过程。还有其他的网络命令如跟踪路由的Tracert命令也是基于ICMP协议的。

传输层

  • 建立应用间的端到端连接
    • 面向连接:会话建立、数据传输、会话拆除
    • 无连接:不保证数据的有序到达
  • TCP(Transmission Control Protocol)传输控制协议
    • 面向连接
    • 可靠(三次握手)
    • 速度慢
  • UDP(User Datagram Protocol)用户数据报协议
    • 无连接
    • 不可靠
    • 速度快
端口号
  • 用来区别应用层的协议
  • 不同的应用协议有不同的端口号

端口是通过端口号来标记的,端口号只有整数,范围是从0到65535

端口有什么用呢?

  • 一台拥有IP地址的主机可以提供许多服务,这些服务完全可以通过1个IP地址来实现。

主机是怎么区分不同的网络服务呢?

  • 显然不能只靠IP地址,因为IP地址与网络服务的关系是一对多的关系。实际上是通过“IP地址+端口号”来区分不同的服务的。

服务器一般都是通过知名端口号来识别的。netstat -a -n

TCP/IP应用层

应用层

主要负责用户和应用程序之间的通信。协调设备和软件的多样性问题;解决系统中文传输问题。

以下是常见的应用协议:

FTP:文件传输协议

HTTP:超文本传输协议

DNS:域名系统

Telnet:远程终端协议

IMAP:Internet邮件访问协议

POP3:邮局协议版本3

常见相关协议缩写

  • TCP:Transmission Control Protocol
  • IP:Internet Protocol
  • FTP:File Transfer Protocol
  • ARP:Address Resolution Protocol
  • RARP:Reverse Address Resolution Protocol
  • UDP:User Datagram Protocol
  • HTTP:Hypertext Transfer Protocol
  • ICMP:Internet Control Message Protocol
  • POP3:Post Offfice Protocol version3
  • IMAP:Internet Mail Access Protocol
  • PPP:Point to Point Protocol
  • SLIP:Serial Line Internet Protocol

四、IP地址

IP地址相关知识

IP地址的特点?
  • IP地址的为32位长

    每个IP地址被分成四组,每组8位,用句点隔开

    每组数字的大小范围为0—255

    ? 10000011 01101011 00010001

    ? 131.107.3.17

    IP地址由两部分构成:网络位+主机位

IP类型

每个地址包含两部分:网络和主机。IP地址中网络部分可以说明该设备是否属于A类、B类、C类、D类或E类网。

网络类最高位网络id网络数主机数网络号范围
A类08位126167772141~127
B类1016位1638465534128~191
C类11024位2097152254192~223
D类1110广播地址
E类1111保留试验
保留地址
  • 网络号

    10

    127(环路测试,127.0.0.1指本机)

    172.16.0.0—172.31.255.255

    192.168.x.x

  • 主机号

  • 全0(表示子网)

  • 全1(广播)

子网掩码

掩码

为什么要使用掩码技术

掩码技术的实现方式

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HwjUL2SX-1627961186570)(/Users/acetian/Library/Application Support/typora-user-images/image-20210803103543084.png)]

使用子网掩码是为了要区分一个IP地址中的网络地址和主机地址。

子网掩码是用来判断任意两台计算机的IP地址是否属于同一子网络的根据。

子网掩码的特点

由连续的1和0构成

默认子网掩码:255.0.0.0 255.255.0.0 255.255.255.0

子网掩码中可以出现的数字:

0 128 192 224 240 248 252 254 255

关于IP地址的运算

逻辑运算:

  • 非/Not

    操作数
    10
    01
  • 与/And

    操作数1操作数2
    100
    111
    010
    000
  • 或/OR

    操作数1操作数2
    101
    111
    011
    000

判断两个IP地址是否在同一子网中

如何判断两个IP地址是否在同一个子网中

  • 主机A:IP=61.48.167.25 子网掩码=255.255.255.192
  • 主机B:IP=61.48.167.224 子网掩码=255.255.255.192
  • 判断的步骤:
    • 将IP地址和子网掩码转换成二进制
    • 将IP地址和子网掩码按位进行与运算
    • 得出子网号,判断是否相等

IP地址 and 子网掩码 = 网络ID

TCP/IP调试命令

Ipconfig

Ipconfig/all

displaydns:显示DNS客户解析缓存的内容

flushdns:刷新并重设 DNS 客户解析缓存的内容

DNS在进行解析的时候会生成缓存,以便下次访问同样域名时,加快速度。

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-08-04 11:34:02  更:2021-08-04 11:36:13 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/27 13:09:14-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计