1、OSI七层参考模型,TCP/IP四层参考模型
OSI七层模型:OSI(Open System Interconnection)开放系统互连参考模型是国际标准化组织(ISO)制定的一个用于计算机或通信系统间互联的标准体系。
TCP/IP四层模型:TCP/IP参考模型是计算机网络的祖父ARPANET和其后继的因特网使用的参考模型。
2、分层管理
在互联网中实际使用的是TCP/IP参考模型。实际存在的协议主要包括在:物理层、数据链路层、网络层、传输层和应用层。各协议也分别对应这5个层次而已。
要找出7个层次所对应的各协议,恐怕会话层和表示层的协议难找到啊。。
1.物理层:主要定义物理设备标准,如网线的接口类型、光纤的接口类型、各种传输介质的传输速率等。它的主要作用是传输比特流(就是由1、0转化为电流强弱来进行传输,到达目的地后在转化为1、0,也就是我们常说的数模转换与模数转换),这一层的数据叫做比特。
2.数据链路层:定义了如何让格式化数据以进行传输,以及如何让控制对物理介质的访问,这一层通常还提供错误检测和纠正,以确保数据的可靠传输。
3.网络层:在位于不同地理位置的网络中的两个主机系统之间提供连接和路径选择,Internet的发展使得从世界各站点访问信息的用户数大大增加,而网络层正是管理这种连接的层。
4.传输层:定义了一些传输数据的协议和端口号(WWW端口80等),如:TCP(传输控制协议,传输效率低,可靠性强,用于传输可靠性要求高,数据量大的数据),UDP(用户数据报协议,与TCP特性恰恰相反,用于传输可靠性要求不高,数据量小的数据,如QQ聊天数据就是通过这种方式传输的), 主要是将从下层接收的数据进行分段和传输,到达目的地址后再进行重组,常常把这一层数据叫做段。
5.会话层:通过传输层(端口号:传输端口与接收端口)建立数据传输的通路,主要在你的系统之间发起会话或者接受会话请求(设备之间需要互相认识可以是IP也可以是MAC或者是主机名)。
6.表示层:可确保一个系统的应用层所发送的信息可以被另一个系统的应用层读取。例如,PC程序与另一台计算机进行通信,其中一台计算机使用扩展二一十进制交换码(EBCDIC),而另一台则使用美国信息交换标准码(ASCII)来表示相同的字符。如有必要,表示层会通过使用一种通格式来实现多种数据格式之间的转换。
7.应用层:是最靠近用户的OSI层,这一层为用户的应用程序(例如电子邮件、文件传输和终端仿真)提供网络服务。
3、七层模型优点
1.把复杂的网络划分成为更容易管理的层(将整个庞大而复杂的问题划分为若干个容易处理的小问题)
2.没有一个厂家能完整的提供整套解决方案和所有的设备,协议。
3.独立完成各自该做的任务,互不影响,分工明确,上层不关心下层具体细节,分层同样有益于网络排错。
4、功能与代表设备
为什么现代网络通信过程中用TCP/IP四层模型,而不是用OSI七层模型呢?
OSI七层模型是理论模型,一般用于理论研究,他的分层有些冗余,实际应用,选择TCP/IP的四层模型。而且OSI自身也有缺陷,大多数人都认为OSI模型的层次数量与内容可能是最佳的选择,其实并非如此,其中会话层和表示层几乎是空的,而数据链路层和网络层包含内容太多,有很多的子层插入,每个子层都有不同的功能。
5、常见网络相关的协议
ARP(Address Resolution Protocol):地址解析协议,将IP解析成MAC地址
DNS:域名解析协议 www.baidu.com
SNMP(Simple Network Management Protocol)网络管理协议
DHCP(Dynamic Host Configuration Protocol)动态主机配置协议,它是在TCP/IP网络上使客户机获得配置信息的协议
FTP(File Transfer Protocol)文件传输协议,它是一个标准协议,是在计算机和网络之间交换文件的最简单的方法。
HTTP(Hypertext Transfer Protocol ):超文本传输协议
HTTPS(Secure Hypertext Transfer Protocol):安全超文本传输协议,它是由Netscape开发并内置于其浏览器中,用于对数据进行压缩和解压操作.
ICMP(Internet Control Message Protocol):Internet控制信息协议,互联网控制报文协议
ping ip定义消息类型有:TTL超时、地址的请求与应答、信息的请求与应答、目的地不可到达
SMTP(Simple Mail Transfer Protocol):简单邮件传送协议
TELNET Protocol:虚拟终端协议
TFTP(Trivial File Transfer Protocol):小文件传输协议
UDP(User Datagram Protocol):用户数据报协议,它是定义用来在互连网络环境中提供包交换的计算机通信的协议
TCP(Transmission Control Protocol):传输控制协议,是一种面向连接的、可靠的、基于字节流的传输层通信协议log转发:开启一个协议:tcp(三次握手和四次挥手)
6、TCP协议和UDP协议的区别
1.TCP协议:TCP(Transmission Control Protocol,传输控制协议)是面向连接的协议,在收发数据前,必须和对方建立可靠的连接。
2.UDP协议:UDP 是User Datagram Protocol的简称, 中文名是用户数据报协议,是一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。
7、TCP与UDP的区别
1.基于连接与无连接;2.对系统资源的要求(TCP较多,UDP少)。3.UDP程序结构较简单;UDP信息包的标题很短,只有8个字节,相对于TCP的20个字节信息包的额外开销很小。所以传输速度可更快。4.TCP保证数据正确性,UDP可能丢包;TCP保证数据顺序,UDP不保证。
场景: 视频,语音通讯使用udp,或网络环境很好,比如局域网中通讯可以使用udp。udp数据传输完整性,可以通过应用层的软件来校对就可以了。
tcp传文件,数据完整性要求高。
8、TCP和UDP常用端口号名称
TCP端口分配
21 | ftp | 文件传输服务 |
---|---|---|
22 | ssh | 安全远程连接服务 |
23 | telnet | 远程连接服务 |
25 | smtp | 电子邮件服务 |
53 | DNS | 域名解析服务,有tcp53也有用udp53端口传输 |
80 | http | web服务 |
443 | https | 安全web服务 |
9、linux查看端口对应的服务
[root@docker-02 ~]# vim /etc/services ##此文件中,包含所有常见端口号及服务名称
注
此文件可以查看常用端口对应的名字。iptables或netstat要把端口解析成协议名时,都需要使用到这个文件。另外后期xinetd服务管理一些小服务时,也会使用到此文件来查询对应的小服务端口号。
有的服务是UDP和TCP端口都会监听的
10、IP地址分类
IP地址分5类,常见的地址是A、B、C 三类
1.A类地址:范围从0-127,0是保留的并且表示所有IP地址,而127也是保留的地址,并且是用于测试环回口用的。因此A类地址的可用的范围其实是从1-126之间。以子网掩码:255.0.0.0。
2.B类地址:范围从128-191,如172.168.1.1,以子网掩码来进行区别:255.255.0.0。
3.C类地址:范围从192-223,以子网掩码来进行区别:255.255.255.0。
4.D类地址:范围从224-239,被用在多点广播(Multicast)中。多点广播地址用来一次寻址一组计算机,它标识共享同一协议的一组计算机。
5.E类地址:范围从240-254,为将来使用保留。
注
ping 127.0.0.1 可以ping通。ping 127.23.23.23 可以ping通吗?
结论:这个127这个网段都用于环回口
[root@docker-02 ~]# ping 127.23.23.23
PING 127.23.23.23 (127.23.23.23) 56(84) bytes of data.
64bytes from 127.23.23.23: icmp_seq=1ttl=64time=0.024 ms
64bytes from 127.23.23.23: icmp_seq=2ttl=64time=0.033 ms
11、总结
http://ssa.yundun.com/cc 云盾全球实时攻防图
你这个案例是让你开眼界!
这里分享一篇总结图:
http://www.colasoft.com.cn/download/protocols_map.php
关于运维学习、分享、交流,笔者开通了微信公众号【运维猫】,感兴趣的朋友可以关注下,欢迎加入,建立属于我们自己的小圈子,一起学运维知识。
有需要技术交流的小伙伴可以加我微信,期待与大家共同成长,本人微信:
最近有一些星友咨询我知识星球的事,我也想继续在星球上发布更优质的内容供大家学习和探讨。运维猫公众号平台致力于为大家提供免费的学习资源。知识星球主要针对于在这方便工作、对运维特别感兴趣、想往运维方面发展的小伙伴。大家可以加入星球,一起探讨工作中的疑惑、技术上的难题、以及未来的发展趋势。
为了保证星球的质量,知识星球每周会发表两篇文章(周三和周末)。
知识星球会不定期的为大家提供更优惠或者免费运维峰会门票的福利。