计算机网络 OSI TCP/IP 笔记

OSI(Open System Interconnect),即开放式系统互联。 一般都叫OSI参考模型,是ISO(国际标准化组织)组织在1985年研究的网络互连模型。为了更好的使网络应用更为普及,推荐使用这个规范来控制网络。

网络协议

OSI七层网络模型

OSI定义了网络互连的七层框架(物理层、数据链路层、网络层、传输层、会话层、表示层、应用层),即ISO开放互连系统参考模型。

OSI七层网络模型 OSI各层功能
应用层(Application) 为应用程序提供服务,文件传输、电子邮件、文件服务、虚拟终端
表示层(Presentation) 数据格式转换、数据加密
会话层(Session) 建立、管理和维护会话
传输层(Transport) 建立、管理和维护端到端的连接
网络层(Network) IP选址及路由选择
数据链路层(Data Link) 提供介质访问和链路管理,传输有地址的帧以及错误检测功能
物理层(Physical) 物理层、以二进制数据形式在屋里媒体上传输数据

OSI各层的功能

网络通信其实和现实中寄信的通信方式相似

以书信的方式进行通信为例。

1、物理层:提供为建立、维护和拆除物理链路所需要的机械的、电气的、功能的和规程的特性;有关的物理链路上传输非结构的位流以及故障检测指示(信件的运输工具,比如火车、汽车)

2、数据链路层:在网络层实体间提供数据发送和接收的功能和过程;提供数据链路的流控(相当于货物核对单,表明里面有些什么东西,接受的时候确认一下是否正确(CRC检验))。

3、网络层:控制分组传送系统的操作、路由选择、拥护控制、网络互连等功能,它的作用是将具体的物理传送对高层透明(相当于邮政局或快递公司地址(IP地址),能正确到达对方)

4、传输层:提供建立、维护和拆除传送连接的功能;选择网络层提供最合适的服务;在系统之间提供可靠的透明的数据传送,提供端到端的错误恢复和流量控制(相当于信封(TCP协议是挂号信,是可靠的;UDP协议是平信,尽力送到对方,不保证一点送到对方))

5、会话层:提供两进程之间建立、维护和结束会话连接的功能;提供交互会话的管理功能,如三种数据流方向的控制,即一路交互、两路交替和两路同时会话模式(相当于邮票,优质邮票寄一封信,相当与一个会话)

6、表示层:代表应用进程协商数据表示;完成数据转换、格式化和文本压缩(你用普通话还是用方言?或者是英语?)

7、应用层:提供OSI用户服务,例如事务处理程序、文件传送协议和网络管理等(信件的内容)

OSI封装过程

描述一下封装过程

1,你应该有需要表达的内容,信的内容(应用层)
2,你需要有一种合适的表达语言,中文、英文(表示层)
3,你要把信纸装进一个信封,贴上一张邮票(一封信就是一个会话)
4,你要选择什么方式寄信(挂号信或平信,TCP或UDP)
5,选择一个快递公司或邮政局,告诉地址,邮政局根据地址选择运输方式(根据IP地址选择路由)
6,邮政局对货物进行再包装,写上装箱单,供接收地的邮政局核对(货物总是先送到对方邮政局,对方邮政局的地址就相当于MAC地址,装箱单就相当于CRC校验码)
7,货物通过具体的运输根据(汽车、汽车、飞机等)

OSI网络体系结构各层协议

一、应用层:TELNET、FTP、TFTP、SMTP、SNMP、HTTP、BOOTP、DHCP、DNS 等

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

三、会话层:

四、传输层:TCP、UDP、SPX

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

六、数据链路层:SDLC、HDLC、PPP、STP(Spanning Tree Protocol)、帧中继

七、物理层:EIA/TIA RS-232、EIA/TIA RS-449、V.35、RJ-45

OSI七层网络模型 TCP/IP四层概念模型
应用层(Application) 应用层
表示层(Presentation)
会话层(Session)
传输层(Transport) 传输层
网络层(Network) 网络层
数据链路层(Data Link) 数据链路层
物理层(Physical)

OSI模型和TCP-IP模型的区别

OSI七层和TCP/IP四层的关系

OSI引入了服务、接口、协议、分层的概念
TCP/IP借鉴了OSI的这些概念建立TCP/IP模型。

OSI先有模型,后有协议,先有标准,后进行实践;
TCP/IP则相反,先有协议和应用再提出了模型,且是参照的OSI模型。

OSI是一种理论下的模型
TCP/IP已被广泛使用,成为网络互联事实上的标准。

TCP/IP他是一个协议簇;而OSI(开放系统互联)则是一个模型,且TCP/IP的开发时间在OSI之前。

TCP/IP是由一些交互性的模块做成的分层次的协议,其中每个模块提供特定的功能;OSi则指定了哪个功能是属于哪一层的。

TCP/IP是五层结构,而OSI是七层结构。OSI的最高三层在TCP中用应用层表示。

TCP:transmission control protocol 传输控制协议
UDP:user data protocol 用户数据报协议

服务器常用端口

端口 服务 说明
21 FTP FTP 服务器所开放的端口,用于上传、下载
22 SSH 22 端口就是 ssh 端口,用于通过命令行模式远程连接 Linux 系统服务器
25 SMTP SMTP 服务器所开放的端口,用于发送邮件
80 HTTP 用于网站服务例如 IIS、Apache、Nginx 等提供对外访问
110 POP3 110 端口是为 POP3(邮件协议 3)服务开放的
137/138/139 NETBIOS 其中 137、138 是 UDP 端口,当通过网上邻居传输文件时用这个端口。而 139 端口:通过这个端口进入的连接试图获得 NetBIOS/SMB 服务。这个协议被用于 windows 文件和打印机共享和 SAMBA
143 IMAP 143 端口主要是用于“Internet Message AccessProtocol”v2(Internet 消息访问协议,简称 IMAP),和 POP3 一样,是用于电子邮件的接收的协议
443 HTTPS 网页浏览端口,能提供加密和通过安全端口传输的另一种 HTTP
1433 SQL Server 1433 端口,是 SQL Server 默认的端口,SQL Server 服务使用两个端口:TCP-1433、UDP-1434。其中 1433 用于供 SQL Server 对外提供服务,1434 用于向请求者返回 SQL Server 使用了哪个 TCP/IP 端口
3306 MySQL 3306 端口,是 MySQL 数据库的默认端口,用于 MySQL 对外提供服务
3389 Windows Server Remote Desktop Services 3389 端口是 Windows 远程桌面的服务端口,可以通过这个端口,用 “远程桌面” 等连接工具来连接到远程的服务器
8080 代理端口 8080 端口同 80 端口,是被用于 WWW 代理服务的,可以实现网页浏览,经常在访问某个网站或使用代理服务器的时候,会加上 “:8080” 端口号。另外 Apache Tomcat web server 安装后,默认的服务端口就是 8080

References

[1] 一文读懂OSI七层模型与TCP/IP四层的区别/联系
[2] OSI模型的通俗理解以及和TCP-IP模型的区别