一、网络相关概念

IP地址:

主机 用于 路由寻址  用的数字标识

域名:

便于IP地址记忆

DNS:

通过注册的 域名 指向 ip 的服务

DDNS:

将用户的动态IP地址映射到一个固定的域名解析服务上
用户每次连接网络的时候客户端程序就会通过 信息 传递把该主机的 动态IP地址 传送给位于服务商主机上的 服务器程序,
服务器程序负责提供 DNS服务 并实现动态域名解析
实现一个 用户访问域名---客户端传递ip---服务器DNS动态解析--域名解析给用户访问对应的地址

MAC地址:

物理地址/硬件地址(位于数据链路层)

长度:48比特(前24位对应不同的厂家代码,后24位标识为同一厂家的不同网卡)

每个设备出厂的时候都有属于自己的mac地址

ARP解析:

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

将包含目标IP地址的ARP请求
广播到网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。

RARP:

反向地址转换协议(RARP)是局域网的物理机器从网关服务器的ARP表或者缓存上
根据MAC地址请求IP地址的协议
RARP的工作流程也相反。首先是查询主机向网路送出一个RARP Request广播封包,向别的主机查询自己的IP地址

子网掩码:

某个IP地址划分成网络地址和主机地址两部分,跟ip进行与操作可算出当前ip地址所处的网段

网关:

没有网络的情况下,两个网络之间不能互相通信,只能通过网关:网络A与B 不在同一网络中,A--转发数据包--A的网关--B的网关--B

PING:

对一个网址发送测试数据包,发送ICMP,看对方网址是否有响应并统计响应时间,以此测试网络

SNMP:

简单网络管理协议,SNMP是基于TCP/IP协议族的网络管理标准,是一种在IP网络中管理网络节点(如服务器、工作站、路由器、交换机等)的标准协议。

(服务器...)被管理的设备-->SNMP代理(转换成SNMP兼容的模式)-->网络管理系统(NMS),可以试用管理软件对当前的设备(路由器、交换机等进行get和set操作)

二、网络协议模型

网络协议

网络协议为计算机网络中进行数据交换而建立的规则、标准或约定的集合。

OSI模型

是国际标准化组织(ISO)提出的一个试图使各种计算机在世界范围内互连为网络的标准框架,简称OSI。

数据的封装和解封装

1.物理层(比特流)

作用:

提供建立、维护和拆除物理链路所需的机械、电气、功能和规程的特性;提供有关在传输介质上传输非结构的位流及物理链路故障检测指示。他们的特性决定了能传输的最大距离,速率等
数据还没有被组织,将 数据 转换成可以 通过物理介质传输的 电子信号

协议:

EIA/TIA RS-232、EIA/TIA RS-449、V.35、RJ-45

应用:

双绞线、线缆、电缆连线连接器等物理媒介

2.数据链路层(帧frame)

作用:

解决了如何在不可靠的物理线路上进行数据的可靠传递。为了保证传输,从网络层接收到的数据被分割成特定的可被物理层传输的。进行物理地址寻址、在物理线路上进行数据(帧frame)的可靠传递以及流量控制。

协议:

SDLC、HDLC、PPP、STP(Spanning Tree Protocol)、帧中继

组成:

介质存取控制(MAC):定义了地址,用来标识数据链路层中的多个设备

逻辑链路控制层(LLC):支持无连接服务和面向连接的服务

应用:

交换机:对帧解码并根据帧中包含的信息把数据发送到正确的接收方

特点:

不同的数据链路层定义了不同的网络和协议特征,其中包括物理编址、网络拓扑结构(设备的连接方式:总线拓扑和环形拓扑)、帧序列、错误校验(传输错误告警)及流控(控制传输速度防止接收超过处理能力而崩溃)

相同mac标准的不同网段之间的数据传输只涉及到数据链路层

3.网络层(数据包)

作用:

规定了通过哪些网络节点、网络路径来将数据(数据包)从发送方发送到接收方。
将网络地址翻译成对应的物理地址:

①确定了从节点A发数据到节点B的网络路径,经过哪些节点。

②既可以建立LAN通信系统,更主要的是可以在WAN网络系统中建立通信

③有自己的路由地址结构,通过路由协议(又称可路由协议)进行网络通信的路由工作。

协议:

IP、IPX、ICMP、RIP、OSPF(Open Shortest Path First开放式最短路径优先)

应用:

①IP路由器

②不同mac标准之间的数据传输涉及到网络层,实现多种网络的互联

单位:数据包 ===>将数据链路层提供的帧组成数据包,包中封装有网络层包头,其中含有逻辑地址信息——源站点和目的站点地址的网络地址。

4.传输层(报文)

作用:

负责总体的数据传输和数据控制,提供端到端交换数据的机制

根据 对方 接受程度 确定适应的传播速率,按照网络能处理的最大尺寸  来分割数据包分割成数据片,并排序,保证传送到接收方时,能按顺序组成正确的数据

协议:

TCP协议、UDP协议等。

应用:

应用于  TCP/IP 协议套中的TCP(传输控制协议),IPX/SPX 协议集的SPX (序列包交换)。

5.会话层

作用:

建立 维持 和 终止 表示层和实体之间的会话,还会创建检查点 使得通讯中断之后可以返回原先的状态

协议:

NFS、SQL、RPC 、X-WINDOWS、ASP(APPTALK会话协议)、SCP

6.表示层

作用:

会话层 和应用层之间的翻译官,转化数据格式,使之能够被另一方理解:数据的加密 解密 压缩 解压缩,发送方的表示层将应用程序数据的抽象语法转换成网络适用于OSI网络传输的传送语法,接收方则相反。

协议:

文本:ASCII,EBCDIC、 图形:TIFF,JPEG,GIF,PICT、声音:MIDI,MPEG,QUICKTIME

7.应用层

作用:

为    用户使用的应用软件  提供访问 OSI的接口,使应用程序能使用网络服务

协议:

文件传输访问管理协议(FTAM)、文件虚拟终端协议(VIP)、公用管理系统信息(CMIP)
TELNET、FTP、TFTP、SMTP、SNMP、HTTP、BOOTP、DHCP、DNS

三、OSI模型和TCP/IP之间的对应

模型:

协议:

1.网络接口层

作用:

①数据封装成帧,解封装成帧

②控制帧传输:

接收方:帧的差错编码(奇偶校验码或 CRC 码)的检查,来判断帧在传输过程中是否出错,并向发送发进行反馈,如果传输发生差错,则需要重发纠正。

发送方:发送帧后,会同时启动定时器,如果帧发送后在一定时间内没有收到反馈,为了避免传输停滞不前,则在计时器Timeou后认为帧传输出错,自动重发。

③流量控制:

发送速率不超过接收速率,并反馈控制 是否暂停发送

2.网际层

路由表:记录着  发送方 到达 接受方的网络路由路径

协议:ARP(Address Resolution Protocol地址解析协议)、ICMP(Internet Control Message Protocol报文控制协议)、IGMP(Internet Group Management Protocol组管理协议),

网络号相同的各主机 位于 同一网段,相互之间可以直接通讯
网络号不同的各主机,则需要 路由器 转发

IP分类:

网络层和传输层的不同:网络层 负责  点 到  点的 传输(点 指的是主机或路由)   ||  传输层 负责 端 到 端 的传输(端 指的是源主机 和 目的主机)

 

3.传输层

① UDP:

特点:

a.无连接,发送数据之前不需要连接,速度快,不可靠不稳定

b.面向报文,IP数据只需简单封装(8字节UDP报头),减少报头开销

c.无阻塞,宁愿丢弃数据不传,不会造成阻塞延迟

d.支持  一对一,一对多,多对一,多对多 通信

像寄信:

自己完成丢包重发 、消息排序、不能保证信不会丢失、也不能保证信是按顺序寄的

② TCP:

特点:

a. 连接,传输数据前要进行三次握手连接,连接断裂之后还要进行四次挥手断开连接,可靠稳定

b. 面向字节流,TCP 并不知道所传输的数据的含义,仅把数据看作一连串的字节序列,它也不保证接收方收到的数据块和发送方发出的数据块具有大小对应关系

c.TCP 提供可靠传输,无差错、不丢失、不重复、按顺序

d.TCP是点对点的连接。一条TCP连接只能连接两个端点。

e.TCP 提供全双工通信,允许通信双方任何时候都能发送数据,发送方设有发送缓存,接收方设有接收缓存。

像通电话:

建立连接之后,互相通话,并且按顺序,丢失的数据包自动重发

【OSI】网络协议模型的更多相关文章

  1. HTTP协议复习三--TCP/IP的网络分层模型和OSI 网络分层模型

    TCP/IP网络分层模型 第一层叫“链接层”(link layer),负责在以太网.WiFi这样的底层网络上发送原始数据包,工 作在网卡这个层次,使用MAC地址来标记网络上的设备,所以有时候也叫MAC ...

  2. 协议 - OSI七层网络协议模型

    摘自:https://www.cnblogs.com/oneplace/p/5611094.html 互联网协议 本文全文转载阮一峰老师的两篇文章,自己做了一些添加内容 参考:互联网协议入门(一) 互 ...

  3. 对TCP/IP网络协议的深入浅出归纳

    前段时间做了一个开发,涉及到网络编程,开发过程比较顺利,但任务完成后始终觉得有一些疑惑.主要是因为对网络协议不太熟悉,对一些概念也没弄清楚.后来 我花了一些时间去了解这些网络协议,现在对TCP/IP网 ...

  4. iOS网络协议 HTTP/TCP/IP浅析

    一.TCP/IP协议       话说两台电脑要通讯就必须遵守共同的规则,就好比两个人要沟通就必须使用共同的语言一样.一个只懂英语的人,和一个只懂中文的人由于没有共同的语言(规则)就没办法沟通.两台电 ...

  5. 转:对TCP/IP网络协议的深入浅出归纳

    转自:http://blog.jobbole.com/74795/ 前段时间做了一个开发,涉及到网络编程,开发过程比较顺利,但任务完成后始终觉得有一些疑惑.主要是因为对网络协议不太熟悉,对一些概念也没 ...

  6. 对TCP/IP网络协议的深入浅出归纳(转)

    前段时间做了一个开发,涉及到网络编程,开发过程比较顺利,但任务完成后始终觉得有一些疑惑.主要是因为对网络协议不太熟悉,对一些概念也没弄清楚.后来 我花了一些时间去了解这些网络协议,现在对TCP/IP网 ...

  7. TCP/IP网络协议的通俗理解,SOCKET,HTTP,SOAP

    TCP/IP,HTTP,SOAP等协议之区别   术语TCP/IP代表传输控制协议/网际协议,指的是一系列协议.“IP”代表网际协议,TCP和UDP使用该协议从一个网络传送数据包到另一个网络.把IP想 ...

  8. ISO/OSI网络体系结构和TCP/IP协议模型

    1. ISO/OSI的参考模型共有7层,由低层至高层分别为:物理层.数据链路层.网络层.传输层.会话层.表示层.     应用层.各层功能分别为: (1)物理层          提供建立.维护和拆除 ...

  9. 简单了解下OSI七层模型的作用以及常见网络协议含义和所用端口

    OSI七层模型及每层的作用 包括:物理层.数据链路层.网络层.传输层.会话层.表示层.应用层物理层用来建立.维护.断开物理连接数据链路层建立逻辑链接.进行硬件地址寻址.差错校验等功能网络层进行逻辑地址 ...

随机推荐

  1. 「BZOJ 3218」 a + b Problem

    题目链接 戳我 \(Solution\) 题目为什么是\(a\ +\ b\ Problem\)啊?这和题面半毛钱关系都没有. 现在来讲一下这题的解法吧,我们首先看看没有奇怪的方格这一个条件吧. 其实没 ...

  2. ajax-3验证

    $("#formBtn").click(function () { // var regName =/^[\u4e00-\u9fa5]{2,10}$/;//姓名只能是汉字切2-10 ...

  3. php代码审计1(php.ini配置)

    1.php.ini基本配置-语法 大小写敏感directive = value(指令=值)foo=bar 不等于 FOO=bar 运算符| & - ! 空值的表达方法foo =     ;fo ...

  4. java集合类学习笔记之ArrayList

    1.简述 ArrayList底层的实现是使用了数组保存所有的数据,所有的操作本质上是对数组的操作,每一个ArrayList实例都有一个默认的容量(数组的大小,默认是10),随着 对ArrayList不 ...

  5. #首行输入数n,接下来输入n行数,以空格隔开

    #首行输入数n,接下来输入n行数,以空格隔开 n = int(raw_input())# print nL = []for i in range(n): L.append([int(x) for x ...

  6. 推荐分享一个牛X的自定义PHP加密解密类

    通俗点说,用它来进行加密,同一个字符串,每次进行加密,得出的结果都是不一样的,大大加强了数据安全性.同时还可设定加密后数据的有效期,简直牛掰了 #食用方法 将下面的第二份模块代码保存为 Mcrypt. ...

  7. RUCM简介

    一.动机 UCM:用例建模,主要用于结构化和文档需求方面. UCSs:用例规格说明书,通常是文本文档,所以描述中不可避免含有歧义. RUCM:限制性用例建模.目标 G1.使UCMs更加可理解并且更精确 ...

  8. 主机和虚拟机互Ping的问题

    主机能ping通虚拟机,虚拟机能ping不通主机. 发现原来是被防火墙阻止了.打开主机防火墙禁止Ping的方式. 在ping不通的电脑上对防火墙进行如下设置:依次单击“防火墙”—“高级设置”—“入站规 ...

  9. scrollView - tableView - collectionView 滚动视图的滚动速度

    介绍: 每次滚动都会触发 didScroll 这个方法, 每次滚动都会有一个偏移量,滚动的快慢决定每一次偏移量的大小,可以通过两次滚动偏移量差,判断速度,从而根据速度大小对导航栏做一些操作 { CGF ...

  10. 使用 Flask 实现 RESTful API

    原文出处: Luis Rei   译文出处:nummy 简介 首先,安装Flask     1 pip install flask 假设那你已经了解RESTful API的相关概念,如果不清楚,可以阅 ...