3-网络初识-协议

这篇具有很好参考价值的文章主要介绍了3-网络初识-协议。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

1.概念

①语法:即数据与控制信息的结构或格式。

②语义:即需要发出何种控制信息,完成何种动作以及做出何种响应。

③时序:即事件实现顺序的详细说明。

2.作用

3.知名协议的默认端口

4.协议分层

4.1.什么是协议分层

4.2.作用

4.3.OSI七层模型

4.4.TCP/IP五层(或四层)模型

5.网络设备所在分层

6.网络分层对应


1.概念

协议,网络协议的简称,网络协议是网络通信(即网络数据传输)经过的所有网络设备都必须共同遵从的一组约定、规则。如怎么样建立连接、怎么样互相识别等。只有遵守这个约定,计算机之间才能相互通信交流。通常由三要素组成:

①语法:即数据与控制信息的结构或格式。

类似打电话时,双方要使用同样的语言:普通话。

②语义:即需要发出何种控制信息,完成何种动作以及做出何种响应。

语义主要用来说明通信双方应当怎么做。用于协调与差错处理的控制信息。

类似打电话时,说话的内容。一方道:你瞅啥?另一方就得有对应的响应:瞅你咋的!

③时序:即事件实现顺序的详细说明。

时序定义了何时进行通信,先讲什么,后讲什么,讲话的速度等。比如是采用同步传输还是异步传输。

女生和男生的通话,总是由男生主动发起通话,而总是在男生恋恋不舍的时候,由女生要求结束通话。

协议(protocol)最终体现为在网络上传输的数据包的格式。

2.作用

3-网络初识-协议

计算机之间的传输媒介是光信号和电信号。通过 "频率" 和 "强弱" 来表示 0 和 1 这样的信息。要想传递各种不同的信息,就需要约定好双方的数据格式。

  • 计算机生产厂商有很多。
  • 计算机操作系统,也有很多。
  • 计算机网络硬件设备,还是有很多。
  • 如何让这些不同厂商之间生产的计算机能够相互顺畅地通信? 就需要有人站出来,约定一个共同的标准,大家都来遵守,这就是网络协议。

3.知名协议的默认端口

系统端口号范围为 0 ~ 65535,其中:0 ~ 1023 为知名端口号,这些端口预留给服务端程序绑定广泛使用的应用层协议,如:

  • 22端口:预留给SSH服务器绑定SSH协议
  • 21端口:预留给FTP服务器绑定FTP协议
  • 23端口:预留给Telnet服务器绑定Telnet协议
  • 80端口:预留给HTTP服务器绑定HTTP协议
  • 443端口:预留给HTTPS服务器绑定HTTPS协议

需要补充的是: 以上只是说明 0 ~ 1023 范围的知名端口号用于绑定知名协议,但某个服务器也可以使用其他 1024 ~ 65535 范围内的端口来绑定知名协议。

餐厅的VIP包房是给会员使用,但会员也可以不坐包房,坐其他普通座位。

4.协议分层

4.1.什么是协议分层

协议分层类似于打电话时,定义不同的层次的协议:

3-网络初识-协议

在这个例子中,我们的协议只有两层;但是实际的网络通信会更加复杂,需要分更多的层次。

4.2.作用

如果某个协议太复杂了,学习成本、使用成本、维护成本都会非常高。因此实际上会针对这个复杂的大协议,拆分成若干个相对简单的小协议,每个小协议负责一部分功能。此时发现,某些协议之间起到的功能和作用是类似的,那么就针对这些小协议,再进行分层。好比代码拆分成好多类,功能类似的类就可以放在一个包里。

好处:

  1. 降低学习维护成本。(封装)
  2. 灵活地针对这里的某一层协议进行替换。

分层最大的好处,类似于面向接口编程:定义好两层间的接口规范,让双方遵循这个规范来对接。

在代码中,类似于定义好一个接口,一方为接口的实现类(提供方,提供服务),一方为接口的使用类 (使用方,使用服务):

  • 对于使用方来说,并不关心提供方是如何实现的,只需要使用接口即可。
  • 对于提供方来说,利用封装的特性,隐藏了实现的细节,只需要开放接口即可。

这样能更好的扩展和维护,如下图:

3-网络初识-协议

4.3.OSI七层模型

OSI:即Open System Interconnection,开放系统互连。

  • OSI 七层网络模型是一个逻辑上的定义和规范:把网络从逻辑上分为了7层。
  • OSI 七层模型是一种框架性的设计方法,其最主要的功能就是帮助不同类型的主机实现数据传输。
  • 它的最大优点是将服务、接口和协议这三个概念明确地区分开来,概念清楚,理论也比较完整。通过七个层次化的结构模型使不同的系统不同的网络之间实现可靠的通讯。

3-网络初识-协议

OSI 七层模型划分为以下七层:

3-网络初识-协议

OSI 七层模型既复杂又不实用:所以 OSI 七层模型没有落地、实现。

实际组建网络时,只是以 OSI 七层模型设计中的部分分层,也即是以下 TCP/IP 五层(或四层)模型来实现。

4.4.TCP/IP五层(或四层)模型

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

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

  • 应用层:负责应用程序间沟通,如简单电子邮件传输(SMTP)、文件传输协议(FTP)、网络远程访问协议(Telnet)等。我们的网络编程主要就是针对应用层。
  • 传输层:负责两台主机之间的数据传输。如传输控制协议 (TCP),能够确保数据可靠地从源主机发送到目标主机。
  • 网络层:负责地址管理和路由选择。例如在IP协议中,通过IP地址来标识一台主机,并通过路由表的方式规划出两台主机之间的数据传输的线路(路由)。路由器(Router)工作在网路层。
  • 数据链路层:负责设备之间的数据帧的传送和识别。例如网卡设备的驱动、帧同步(就是说从网线上检测到什么信号算作新帧的开始)、冲突检测(如果检测到冲突就自动重发)、数据差错校验等工作。 有以太网、令牌环网,无线LAN等标准。交换机(Switch)工作在数据链路层。
  • 物理层:负责光/电信号的传递方式。比如现在以太网通用的网线(双绞线)、早期以太网采用的的同轴电缆(现在主要用于有线电视)、光纤,现在的wifi无线网使用电磁波等都属于物理层的概念。物理层的能力决定了最大传输速率、传输距离、抗干扰性等。集线器(Hub)工作在物理层。

3-网络初识-协议

越往上层的协议越接近用户,越往下层的协议越接近硬件。

上层协议要调用下层协议,下层协议要给上层协议提供服务。

驱动程序,是和硬件设备关联的,每个硬件厂商都会提供对应的驱动软件,操作系统内核通过驱动程序来控制硬件。

  • 物理层:约定了网络通信中基础的硬件设备。如网线、网口等设备。因此咱们使用的网线、网口都是相同规格的。
  • 数据链路层、网络层、传输层:像快递公司,具体帮我们完成送快递的过程。
  • 数据链路层:主要负责相邻的两个节点之间,具体怎么进行传输。如"上海->苏州"通过卡车;"苏州->西安"通过飞机。

3-网络初识-协议

  • 网络层:主要负责路径的规划,看走哪条路比较划算。如:"上海->苏州->西安"还是"上海->南京->西安"?
  • 传输层:站在顾客和商家的角度,只关心起点和终点,不关心传输的具体过程。端到端之间的传输。
  • 应用层:应用程序,描述了传输的数据,用户要怎样来使用。如顾客在淘宝上买了个刷子,可以刷沙发、刷床、打儿子~

物理层我们考虑的比较少。因此很多时候也可以称为 TCP/IP四层模型。

5.网络设备所在分层

  • 对于一台主机,它的操作系统内核实现了从传输层到物理层的内容,也即是TCP/IP五层模型的下四层。
  • 对于一台路由器,它实现了从网络层到物理层,也即是TCP/IP五层模型的下三层。
  • 对于一台交换机,它实现了从数据链路层到物理层,也即是TCP/IP五层模型的下两层。
  • 对于集线器,它只实现了物理层。

注意这里说的是传统意义上的交换机和路由器,也称为二层交换机(工作在TCP/IP五层模型的下两层)、三层路由器(工作在TCP/IP五层模型的下三层)。 随着现在网络设备技术的不断发展,也出现了很多3层或4层交换机,4层路由器。以下说的网络设备都是传统意义上的交换机和路由器。

6.网络分层对应

网络数据传输时,经过不同的网络节点(主机、路由器)时,网络分层需要对应。

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

3-网络初识-协议

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

3-网络初识-协议文章来源地址https://www.toymoban.com/news/detail-465124.html

到了这里,关于3-网络初识-协议的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 网络初识之协议分层

    目录 一、初始网络 1.网络通信基础 1.1 IP地址 1.2 端口号 1.3 认识协议 1.4 五元组 2. 协议分层 2.1 什么是协议分层 2.2 协议分层的好处 2.3 TCP/IP五层模型(最核心的概念) 3. 封装和分用 3.1 发送过程(以QQ发送消息为例) 3.2 接收过程 3.3 真实网络环境中要经理多节点进行转发

    2023年04月21日
    浏览(42)
  • 3-网络初识-协议

    目录 1.概念 ①语法:即数据与控制信息的结构或格式。 ②语义:即需要发出何种控制信息,完成何种动作以及做出何种响应。 ③时序:即事件实现顺序的详细说明。 2.作用 3.知名协议的默认端口 4.协议分层 4.1.什么是协议分层 4.2.作用 4.3.OSI七层模型 4.4.TCP/IP五层(或四层)

    2024年02月07日
    浏览(29)
  • 哈工大计算机网络课程数据链路层协议详解之:多路访问控制(MAC)协议

    在上一小节介绍完数据链路层功能和所提供的服务后,接下来我们介绍一个在 数据链路层非常重要的一个协议:多路访问控制MAC协议。 多路访问控制主要是为了解决一类链路的使用问题。作为网路中的链路,大致可以分为以下两类: 点对点链路 顾名思义,链路只连接两个相

    2024年02月15日
    浏览(53)
  • 【计算机网络】第三章 数据链路层(点对点协议 媒体介入控制)

    点对点协议是目前使用最广泛的点对点数据链路层协议。 PPP协议为在点对点链路传输各种协议数据提供了一个标准方法,主要由如下三个部分过程: 对各种协议数据报的封装方法(封装成桢)。 链路控制协议 LCP 用于建立、配置以及测试数据链路的连接。 一套网络控制协议

    2024年02月13日
    浏览(43)
  • 【JavaScript】JavaScript 程序流程控制 ⑥ ( while 循环概念 | while 循环语法结构 )

    在 JavaScript 中 , while 循环 是一种 \\\" 循环控制语句 \\\" , 使用该语句就可以 重复执行一段代码块 , 直到指定的 \\\" 条件表达式 \\\" 不再满足 , 如果 \\\" 条件表达式 \\\" 一开始就不满足 , 循环体 永远不会执行 ; while 循环语法结构如下 : 首先 , 执行 \\\" 条件表达式 \\\" , 在上述语法结构中 , \\\" 条件

    2024年04月15日
    浏览(39)
  • 【JavaEE】网络初识 (IP地址, 端口号, 协议, 封装和分用)

    本章来介绍一下网络中的一些基本概念, 例如 : IP地址, 端口号, 协议, 协议分层, 封装, 分用等等. 网络互联的目的是进行网络通信, 即进行网络数据传输, 更具体一点, 是网络主机的不同进程间, 基于网络传输数据. 那么在组建的网络中是如何判断从哪台主机, 将数据传输到哪一台

    2024年01月21日
    浏览(40)
  • 初识Java篇(JavaSE基础语法)(1)(数据类型+运算符)

     个人主页(找往期文章包括但不限于本期文章中不懂的知识点): 我要学编程(ಥ_ಥ)-CSDN博客 目录 前言:  初识Java  运行Java程序 注释 标识符 数据类型与变量  字面常量 数据类型 变量 类型转换  类型提升  字符串类型  运算符 算术运算符  关系运算符  逻辑运

    2024年03月24日
    浏览(51)
  • 《网络协议》01. 基本概念

    title: 《网络协议》01. 基本概念 date: 2022-08-30 09:50:52 updated: 2023-11-05 15:28:52 categories: 学习记录:网络协议 excerpt: 互联网、网络互连模型(OSI,TCP/IP)、计算机通信基础、MAC 地址、ARP ICMP、IP 子网掩码、CIDR 表示方法、子网、超网、路由、网络 互联网 因特网、ISP、网络分类、上

    2024年02月05日
    浏览(39)
  • 【网络】应用层——协议定制 | 序列化和反序列化 | 初识http

    🐱作者:一只大喵咪1201 🐱专栏:《网络》 🔥格言: 你只管努力,剩下的交给时间! 在前面本喵已经带大家见识过了 scoket 网络通信的样子,现在开始深入学习网络的原理,本喵采取的策略是从顶层往底层讲解,也就是从应用层到数据链路层的顺序。 我们知道,协议就是

    2024年02月15日
    浏览(44)
  • 初识mysql数据库之索引概念与磁盘效率问题

    目录 一、索引的概念及作用 二、实际看看索引的效率提升 三、认识磁盘 1. 简单了解磁盘 2. 数据库文件存储位置 3. 定位扇区 4. 数据读取效率问题 5. 磁盘随机访问与磁盘连续访问 5.1 随机访问 5.2 连续访问 四、mysql与磁盘的交互 五、建立共识  索引,其实就是用于 提高数据

    2024年02月16日
    浏览(53)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包