OSI七层模型与TCP/IP协议栈模型分析

        标准TCP/IP协议是用于计算机通信的一组协议,通常被称为TCP/IP协议栈,以它为基础组建的互联网是目前国际上规模最大的计算机网络。正因为互联网的广泛应用,使得TCP/IP成为了事实上的网络标准。

OSI七层模型

oSI参考模型各层的解释
应用层为应用程序提供服务
表示层数据格式转化、数据加密
会话层建立、管理和维护会话
传输层建立、管理和维护端到端的连接
网络层IP选址及路由选择
数据链路层提供介质访问和链路管理
物理层物理层

TCP/IP四层模型

一.OSI七层模型与TCP/IP协议栈模型对应关系

二.各个层对应协议有哪些?

应用层:http   dns  telnet   ftp  TFTP   。。。。
传输层:tcp   udp
网络层:ip  ICMP  ARP   rarp  
数据链路层:ethnet  ethnet2 802.3   ppp  fr x.25    hdlc  
物理层:比特流
应用层:http dns telnet ftp TFTP https
传输层:tcp udp
网络层:ip ICMP ARP rarp igmp
数据链路层:ethnet ethnet2 802.3 ppp fr x.25 hdlc
物理层:比特流

三.TCP/UDP协议的区别及应用场景?

TCP和UDP的对比

TCPUDP
可靠性可靠不可靠
建立连接面向连接无连接
报文面向字节流面向报文
传输方式点对点一对一,一对多,多对多
传输效率
流量控制有(滑动窗口)
拥塞控制
应用场景对传输效率要求低,对传输准确性要求高,要求有连接的场景对传输效率要求高,对准确性要求低

TCP适用场景:

当网络硬件失效或者负担太重时,数据包可能就会产生丢失、重复、延时、乱序的现象。这些都会导致我们的通信不正常的时候。如果让应用程序来担负差错控制的工作,无疑将给程序员带来许多复杂的工作,于是,我们使用独立的通信协议来保证通信的可靠性是非常必要的。

TCP一般用于文件传输(FTP HTTP 对数据准确性要求高,速度可以相对慢),发送或接收邮件(POP IMAP SMTP 对数据准确性要求高,非紧急应用),远程登录(TELNET SSH 对数据准确性有一定要求,有连接的概念)等等

UDP适用场景:

1.高效可靠的网络环境中(不需要考虑网络不好导致的丢包、乱序、延时、重复等问题),因为UDP是无连接的服务,不用消耗不必要的网络资源(TCP中的协议间通信)和处理时间(预期确认需要的时间),从而效率要高的多

2.轻权通信中,当需要传输的数据量很小(可以装在一个IP数据包内)时。如果我们使用TCP协议,那么,先建立连接,一共需要发送3IP数据包,然后数据传输,1IP数据包,产生一个确认信号的IP包,然后关闭连接,需要传输5IP数据包。使用TCP协议IP包的利用率为1/10。而使用UDP,只需要发送一个IP数据包。哪怕丢包(服务不成功),也可重新申请服务(重传)。

UDP很适合这种客户机向服务器传送简单服务请求的环境。此类应用层协议包括TFTP , SNMP , DNS ,DHCP等。
3.对实时性要求很强的通信中:在诸如实时视频直播等对实时性要求很高的环境中,从而允许一定量的丢包的情况下(直播比赛,前面丢失的包,重传出来已经意义不大了),UDP更适合。(可以根据具体需要通过应用层协议提供可靠性,不用像TCP那么严格。)

四.TCP/UDP协议簇都包含哪些协议?知名协议所对应的端口号?

使用TCP协议的常见端口主要有以下几种:

(1) FTP:定义了文件传输协议,使用21端口。常说某某计算机开了FTP服务便是启动了文件传输服务。下载文件,上传主页,都要用到FTP服务。

(2) Telnet:它是一种用于远程登陆的端口,用户可以以自己的身份远程连接到计算机上,通过这种端口可以提供一种基于DOS模式下的通信服务。如以前的BBS是-纯字符界面的,支持BBS的服务器将23端口打开,对外提供服务。

(3) SMTP:定义了简单邮件传送协议,现在很多邮件服务器都用的是这个协议,用于发送邮件。如常见的免费邮件服务中用的就是这个邮件服务端口,所以在电子邮件设置-中常看到有这么SMTP端口设置这个栏,服务器开放的是25号端口。

(4) POP3:它是和SMTP对应,POP3用于接收邮件。通常情况下,POP3协议所用的是110端口。也是说,只要你有相应的使用POP3协议的程序(例如Fo-xmail或Outlook),就可以不以Web方式登陆进邮箱界面,直接用邮件程序就可以收到邮件(如是163邮箱就没有必要先进入网易网站,再进入自己的邮-箱来收信)。
使用UDP协议端口常见的有:

(1) HTTP:这是大家用得最多的协议,它就是常说的"超文本传输协议"。上网浏览网页时,就得在提供网页资源的计算机上打开80号端口以提供服务。常说"WWW服-务"、"Web服务器"用的就是这个端口。

(2) DNS:用于域名解析服务,这种服务在Windows NT系统中用得最多的。因特网上的每一台计算机都有一个网络地址与之对应,这个地址是常说的IP地址,它以纯数字+"."的形式表示。然而这却不便记忆,于是出-现了域名,访问计算机的时候只需要知道域名,域名和IP地址之间的变换由DNS服务器来完成。DNS用的是53号端口。

(3) SNMP:简单网络管理协议,使用161号端口,是用来管理网络设备的。由于网络设备很多,无连接的服务就体现出其优势。

常见协议所对应的端口号:

FTP 20 / 21         文件传输协议

SSH 22                安全外壳协议

Telnet 23             (TCP/IP协议族中的一员)

SMTP 25             邮件传输协议

RDP 3389           远程桌面协议

IMAP 143            交互邮件访问协议

POP3 110            邮局协议版本3

SNMP161            简单网络管理协议

HTTP 80              超文本传输协议

HTTPS443           超文本传输安全协议

SMB  445          服务器信息块

SQL SEVER 3389 sql server 数据库

DNS 53               域名解析协议

DHCP 68/67        动态主机配置协议
 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值