基本知识概述

网络协议是什么?

为进行网络中的数据交换,而建立的规则(约定),就称为网络协议

网络协议的三个组成要素?

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

语义:发出何种控制信息,完成何种动作,作出何种响应

同步:完成某个事件的具体顺序,需要详细说明

计算机网络体系结构是什么?

计算机网络的各层及其协议的集合,就是网络的体系结构 。

OSI/RM 七层协议体系结构

简称:OSI/RM (Open System Interconnection Rerference Model,开放系统互连基本参考模型)可以简称为 OSI 七层模型

由来:ISO(International Organization for Standardization,国际标准化组织)推出 。

解释:OSI/RM (Open System Interconnection Rerference Model),开放(Open)是指此标准是非独家垄断的,只要遵循 OSI 标准,那么一个系统就可以和位于世界上任何地方的、也遵循 OSI 标准的其他任何系统通信,这一点像世界范围的有线电话和邮政系统;系统(System)是指在现实的系统中与互连有关的各部分,并不是系统中的所有部分都与互连有关 。

特点:准确来说,先有 OSI 七层模型,后有协议;先有标准,后进行实践;所以理论概念上虽然很清晰,但实际上即复杂又不实用;这一点和 TCP/IP 四层模型不同,TCP/IP 四层模型是在实践的基础上衍生的 。

数据传输的过程如下图所示,

TCP/IP 四层协议体系结构

首先,TCP/IP(Transmission Control Protocol / Internet Protocol,传输控制协议 / 网际协议)是指能够在多个不同网络间实现信息传输的协议栈(协议蔟/协议集/协议群)。TCP/IP 协议不仅仅指的是TCP 和 IP 两个协议,而是指一个由 FTP、SMTP、TCP、UDP、IP 等协议构成的协议栈, 只是因为在 TCP/IP 协议中 TCP协议 和 IP协议 最具代表性,所以被称为 TCP/IP 协议,根据 TCP/IP 协议栈中,内部各个协议的角色功能不同,可以被划分为四个部分:

TCP/IP 协议栈 迅速发展成为了计算机网络体系结构的一种标准,衍生出了 TCP/IP 四层参考模型:



相对于 OSI 七层参考模型而言,TCP/IP 四层模型先有协议栈,然后才建立的模型,更加符合实际应用 。

两种体系结构比较

共同点:

(1)OSI参考模型和TCP/IP参考模型都采用了层次结构的概念。

(2)都能够提供面向连接和无连接两种通信服务机制。

不同点:

(1)OSI采用的七层模型,而TCP/IP是四层结构。

(2)TCP/IP参考模型的网络接口层实际上并没有真正的定义,只是一些概念性的描述。而OSI参考模型不仅分了两层,而且每一层的功能都很详尽,甚至在数据链路层又分出一个介质访问子层,专门解决局域网的共享介质问题。

(3)OSI模型是在协议开发前设计的,具有通用性。TCP/IP是先有协议集然后建立模型,不适用于非TCP/IP网络。

(4)OSI参考模型与TCP/IP参考模型的传输层功能基本相似,都是负责为用户提供真正的端对端的通信服务,也对高层屏蔽了底层网络的实现细节。所不同的是TCP/IP参考模型的传输层是建立在网络互联层基础之上的,而网络互联层只提供无连接的网络服务,所以面向连接的功能完全在TCP协议中实现,当然TCP/IP的传输层还提供无连接的服务,如UDP;相反OSI参考模型的传输层是建立在网络层基础之上的,网络层既提供面向连接的服务,又提供无连接的服务,但传输层只提供面向连接的服务。

(5)OSI参考模型的抽象能力高,适合与描述各种网络;而TCP/IP是先有了协议,才制定TCP/IP模型的。

(6)OSI参考模型的概念划分清晰,但过于复杂;而TCP/IP参考模型在服务、接口和协议的 区别上不清楚,功能描述和实现细节混在一起。

(7)TCP/IP参考模型的网络接口层并不是真正的一层;OSI参考模型的缺点是层次过多,划分意义不大但增加了复杂性。

(8)OSI参考模型虽然被看好,由于没把握好时机,技术不成熟,实现困难;相反,TCP/IP参考模型虽然有许多不尽人意的地方,但还是比较成功的。

五层协议体系结构

在学习计算机网络的原理时,往往综合 OSI 七层模型TCP/IP 四层模型 的优点,引申出五层参考模型,可以更好的介绍网络的原理,实际应用还是 TCP/IP 四层体系结构 。

本文借鉴了《计算机网络(第七版)》百度百科以及Blog:

百度百科

冲突域和广播域

以太网交换机和路由器有什么区别

超详细各层协议

必读 图解 TCP/IP标准化

OSI七层模型

报文是哪个一层的数据单位

TCP 三次握手四次挥手以及面试题

TCP/IP 网络知识总结

网络协议 & 协议体系结构模型的更多相关文章

  1. ylbtech-协议-网络-安全协议:HTTPS

    ylbtech-协议-网络-安全协议:HTTPS HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer 或 Hypertext ...

  2. ZeroMQ接口函数之 :zmq_tcp – 使用TCP协议的ØMQ网络单播协议

    ZeroMQ 官方地址 :http://api.zeromq.org/4-1:zmq-tcp zmq_tcp(7)          ØMQ Manual - ØMQ/4.1.0 Name zmq_t ...

  3. TCP/IP 中文译名为传输控制协议/因特网互联协议,又叫网络通讯协议

    原文地址:http://hi.baidu.com/albyuyrgqgbbhoq/item/65006d2d002ab33195f62ba1 TCP/IP(Transmission Control P ...

  4. 浅探网络1---tcp协议详解(三次握手和四次挥手)

    TCP协议是网络多层协议中运输层的最重要的协议之一,运输层是两台主机的进程之间的通信.除了TCP还有一个是UDP协议(用户数据包协议) TCP全称是Transmission Control Proto ...

  5. 网络编程协议(TCP和UDP协议,黏包问题)以及socketserver模块

    网络编程协议 1.osi七层模型 应用层  表示层  会话层  传输层  网络层  数据链路层  物理层 2.套接字 socket 有两类,一种基于文件类型,一种基于网络类型 3.Tcp和udp协议 ...

  6. IEEE1588精密网络同步协议(PTP)

    1  引言 以太网技术由于其开放性好.价格低廉和使用方便等特点,已经广泛应用于电信级别的网络中,以太网的数据传输速度也从早期的10M提高到100M,GE,10GE.40GE,100GE正式产品也于20 ...

  7. 网络编程协议(TCP和UDP协议,粘包问题)以及socketserver模块

    网络编程协议 1.osi七层模型 应用层  表示层  会话层  传输层  网络层  数据链路层  物理层 2.套接字 socket 有两类,一种基于文件类型,一种基于网络类型 3.Tcp和udp协议 ...

  8. tcp/ip (网络通讯协议)

    介绍 TCP: 传输控制协议, IP: 网际协议, TCP/IP: 供已连接互联网的计算机之间进行通信的通信协议 在tcp/ip内部 , 包含一系列处理数据通信的协议: tcp.udp.icmp.dh ...

  9. 协议-网络-安全协议:SSH(安全外壳协议)

    ylbtech-协议-网络-安全协议:SSH(安全外壳协议) SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定:SSH 为建立 ...

  10. Raknet是一个基于UDP网络传输协议的C++网络库(还有一些其它库,比如nanomsg,fastsocket等等)

    Raknet是一个基于UDP网络传输协议的C++网络库,允许程序员在他们自己的程序中实现高效的网络传输服务.通常情况下用于游戏,但也可以用于其它项目. Raknet有以下好处: 高性能 在同一台计算机 ...

随机推荐

  1. CTFHub - Web(一)

    请求方法: 1.进入页面,提示:HTTP 请求方法, HTTP/1.1协议中共定义了八种方法(也叫动作)来以不同方式操作指定的资源. 2.当前http的请求方式是get请求,当你使用CTFHUB为请求 ...

  2. ctfhub技能树—sql注入—Cookie注入

    手注 打开靶机 查看页面信息 查找cookie 测试是否为cookie注入 抓包 尝试注入 成功查询到数据库名 查询表名 查询字段名 查询字段信息 成功拿到flag sqlmap 查询数据库名 pyt ...

  3. Core3.1 微信v3 JSAPI支付

    1.前言 "小魏呀,这个微信支付还要多久?","快了快了老板,就等着最后一步了...","搞快点哈,就等着上线呢","...... ...

  4. 词嵌入之FastText

    什么是FastText FastText是Facebook于2016年开源的一个词向量计算和文本分类工具,它提出了子词嵌入的方法,试图在词嵌入向量中引入构词信息.一般情况下,使用fastText进行文 ...

  5. [微信小程序]字体文件,字体图标(.ttf,.woff,woff2)等无法显示问题

    一. 背景 项目引用了第三方UI框架Vant-weapp,但是前几天Vant的cdn被运营商封禁,导致van-icon无法使用. 有赞官方在Github上给出了在小程序app.wxss上添加以下代码的 ...

  6. Oracle19c的多租户笔记

    Oracle19c的多租户笔记 1.多租户的概念 PDB(PLUGGABLE DATABASE)可以理解为我们Oracle11gR2的数据库,只不过是一个实例上面可以放置多个数据库了.名称为插件式数据 ...

  7. SICP 解题集 — SICP 解题集 https://sicp.readthedocs.io/en/latest/

    SICP 解题集 - SICP 解题集 https://sicp.readthedocs.io/en/latest/

  8. 判断2个list中是否有相同的数据(相交)Collections.disjoint

    https://blog.csdn.net/yang_niuxxx/article/details/85092490 private void initData() { for (int i = 0; ...

  9. fastjson的deserializer的主要优化算法 漏洞

    JSON最佳实践 | kimmking's blog http://kimmking.github.io/2017/06/06/json-best-practice/ Fastjson内幕 Java综 ...

  10. css知识补充

    盒子模型的介绍: 在网页中基本上都会显示一些方方正正的盒子,这种盒子就被我们称为盒模型 盒子模型的五个属性: width,height,border(边框),padding(内边距),margin(外 ...