OSI参考模型---网络基础篇(1)
什么是网络
网络就是将分布在不同地理位置,具有独立功能的终端(一切联网的设备都叫终端;例如电脑,手机,智能家电等等联网的设备),通过通信线路(双绞线、光纤、电话线等等)和通信设备(例如:交换机、路由器等等)相互连接起来,进行数据通信,实现资源共享。
网络大致规划为三个类型:
- 局域网 LAN(Local Area Network):本地私有的一个网络范围。如果是一个规模比较大的局域网,也会成为是一个园区网。
- 城域网 MAN(Metropolitan Area Network):如果一个网络的覆盖面积达到了一个城市,就可以称为城域网。
- 广域网 WAN (Wide Area Network):如果覆盖面积达到了全国或者全球,就称为广域网,全球最大的广域网就是Internet互联网。
局域网组网
局域网连接互联网的三种方式:
1.DSL(Data/Digital Subscriber Line):数字用户线,是以电话线为传输介质的传输技术组合。
电话线网络传输的是模拟信号,计算机网络是数字信号(0/1 二进制),所以需要一个转换器,将模拟信号转换成数字信号,那就是Modem(上网猫)
DSL包括ADSL(Asymmetric Digital Subscriber Line,非对称数字用户线)、RADSL、HDSL和VDSL等等。
2.Cobler(有线电视网络),也是需要Modem转换器。
3.Serial (网络中的一种数字信号)
OSI参考模型
- OSI的概念:
– Open System Interconnect开放系统互连参考模型,是由ISO(国际标准化组织)定义的。它是个灵活的、稳健的和可互操作的模型, 是用来了解和设计网络体系结构的。
- OSI模型的目的:
– 规范不同系统的互联标准,使两个不同的系统能够较容易的通信, 而不需要改变底层的硬件或软件的逻辑。
– 本质:在网络中顺利的将一个数据包从一个节点传递到另一个节点
- OSI模型分为七层:
– OSI把网络按照层次分为七层,由下到上分别为物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。
特点:
1、OSI模型每层都有自己的功能集;
2、层与层之间相互独立又相互依靠;
3、上层依赖于下层,下层为上层提供服务。
OSI七层通信参考模型
应用层
• 应用层的作用:
为应用软件提供接口,使应用程序能够使用网络服务
• 常见的应用层协议:
http(80)、ftp(20/21)、smtp(25)、pop3(110)、telnet(23)、dns(53)等
表示层
• 表示层的作用:
– 数据的解码和编码
– 数据的加密和解密
– 数据的压缩和解压缩
会话层
• 会话层的作用:
– 建立、维护、管理应用程序之间的会话。
• 功能:
– 对话控制
– 同步
传输层
• 传输层的作用:
– 负责建立端到端的连接,保证报文在端到端之间的传输。
• 传输层的功能:
– 服务点编址(端口号)、分段与重组、连接控制、流量控制、差错控制。
网络层
• 网络层的作用:
– 负责将分组数据从源端传输到目的端
• 网络层功能:
– 为网络设备提供逻辑地址(IP地址、源IP地址和目的IP地址)
– 进行路由选择、分组转发
数据链路层
• 数据链路层的作用:
– 在不可靠的物理链路上,提供可靠的数据传输服务,把帧从一跳(结点)移动到另一跳(结点)。
• 数据链路层的功能:
– 组帧、物理编址(MAC地址,唯一标示)、流量控制、差错控制、接入控制
物理层
• 物理层的作用:
– 负责把逐个的比特从一跳(结点)移动到另一跳(结点)。
• 物理层功能:
– 定义接口和媒体的物理特性
– 定义比特的表示、数据传输速率、信号的传输模式(单工、半双工、全双工)
– 定义网络物理拓扑(网状、星型、环型、总线型等拓扑)
各层之间的联系
数据的发送—报文封装
数据的接收—报文拆封
OSI参考模型的优点
1. 将网络通信过程划分成更小、更简单的组件,这有助于组件的开发、设计和故障排除;
2. 通过标准化网络组件,让多家厂商能够协作开发;
3. 定义了模型每层执行的功能,从而鼓励了行业准化;
4. 让不同类型的网络硬件和软件能够彼此通信;
5. 避免让对一层的修改影响其他层,从而避免妨碍开发工作。
OSI参考模型---网络基础篇(1)的更多相关文章
- Python3 与 C# 网络编程之~ 网络基础篇
最新版本查看:https://www.cnblogs.com/dotnetcrazy/p/9919202.html 入门篇 官方文档:https://docs.python.org/3/library ...
- TCP/IP协议栈---网络基础篇(3)
TCP/IP协议栈 在网络中实际使用的是TCP/IP,OSI是参考模型. TCP/IP协议栈 – 是由一组不同功能的协议组合在一起构成的协议栈 – 利用一组协议完成OSI所实现的功能 应用层协议 传输 ...
- Docker容器网络-基础篇
开源Linux 一个执着于技术的公众号 Docker的技术依赖于Linux内核的虚拟化技术的发展,Docker使用到的网络技术有Network Namespace.Veth设备对.Iptables/N ...
- 网络基础篇(一)--TCP/IP协议族
TCP/IP协议族是一个分层,多协议通信体系. 1 TCP/IP协议族体系结构 TCP/IP协议族自底而上分为四层: 数据链路层, 网络层, 传输层和应用层. 1.1 数据链路层 实现网卡接口的网络驱 ...
- 网络基础篇之NAT(原理)
一.NAT的产生 由于网络的飞速发展和网络应用的极速增多,致使IPv4可用地址空间逐渐枯竭.尽管IPv6可以在根本上解决地址枯竭问题,但IPv4发展到IPv6还需要一个过渡,而这便产生了NAT. 二. ...
- 网络基础篇之HDLC、PPP(原理)
一.广域网传输 之前讲解的都是关于局域网的数据传输,这次讲解的是广域网的传输. 广域网简称WAN,是一种跨越超大的.地域性的计算机网络集合.通常跨省.市.甚至一个国家.广域网包括很多子网,子网可以是局 ...
- 网络基础——OSI参考模型
一.OSI/ISO/IOS傻傻分不清楚 ISO 国际标准化组织(International Organization for Standardization)简称ISO,是一个全球性的非政府组织,是国 ...
- 软件开发架构、网络基础知识、osi七层模型
一.软件开发的架构 涉及到两个程序之间通讯的应用大致可以分为两种: 第一种是应用类:qq.微信.网盘.优酷这一类是属于需要安装的桌面应用 第二种是web类:比如百度.知乎.博客园等使用浏览器访问就可以 ...
- 网络基础 ----------- osi 与 一些协议
1.了解 OSI ISO IOS ISO(全称:International Organization for Standardization) 国际标准化组织, 成立于1947年2月23日,制定全世界 ...
随机推荐
- C++第三方日志库Pantheios
C++第三方日志库Pantheios Kagula 2012-1-11 简介 在项目实践中发现一个好的日志记录非常重要,你需要借助Logging才能跟踪软件中的错误.所以这里研究下第三方C++库Pan ...
- HDU 1027 以数列
Ignatius and the Princess II Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K ( ...
- WPF查找父元素子元素
原文:WPF查找父元素子元素 /// <summary> /// WPF中查找元素的父元素 /// </summary> /// &l ...
- WPF RenderTransform的使用
呈现变形的元素并没有改变位置,只是呈现在不同的位置而已,所以动画要用呈现变形 好处:为了效率,如果改变位置的话,需要重新测量,布局 <Window x:Class="wpf180709 ...
- Call asynchronous method in constructor
using System; using System.ComponentModel; using System.Threading.Tasks; public sealed class NotifyT ...
- jquery 显示和隐藏的三种方式
<!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"><head> & ...
- golang并发编程的两种限速方法
引子 golang提供了goroutine快速实现并发编程,在实际环境中,如果goroutine中的代码要消耗大量资源时(CPU.内存.带宽等),我们就需要对程序限速,以防止goroutine将资源耗 ...
- HTTP、FTP状态码 汇总
原文:HTTP.FTP状态码 汇总 HTTP1xx - 信息提示(这些状态代码表示临时的响应.客户端在收到常规响应之前,应准备接收一个或多个 1xx 响应. ) • 100 - 继续.• 101 - ...
- qmake.exe是在Qt安装编译时生成的,里面内嵌了Qt相关的一些路径(最简单的方法是保持一样的安装路径,最方便的办法是设置qt.conf文件)
在网上直接下载别人编译好的Qt库,为自己使用省了不少事.但往往也会遇到些问题,其中Qt version is not properly installed,please run make instal ...
- 什么是.NET Native?
使用CoreRT将.NET Core发布为Native应用程序 - KAnts - 博客园 http://www.cnblogs.com/ants/p/8630332.html Microsoft . ...