Ⅰ osi七层协议详解
应用层: http\ftp\自定义协议
应用层由来:用户使用的都是应用程序,均工作于应用层,互联网是开放的,大家都可以开发自己的应用程序,数据多种多样,必须规定好数据的组织形式
应用层功能:规定应用数据的数据格式
例:TCP协议可以为各种各样的程序传递数据,比如Email、WWW、FTP等等。那么,必须有不同协议规定电子邮件、网页、FTP数据的格式,这些应用程序协议就构成了”应用层”。
Ⅱ 传输层: tcp\udp
tcp协议
可靠传输:tcp数据包没有长度限制,理论上可以无限长,但是为了保证网络的效率,通常tcp数据包的长度不会超过ip数据包的长度,以确保单个tcp数据包不必再分割
不可靠传输:'报头'部分一共只有8个字节,总长度不超过65535字节,正好放进一个
ip数据包
tcp三次握手和四次挥手
三次握手
A--->B A喜欢B
A<---B B也喜欢A
A<--->B 你来我往
四次挥手
A--->B A告诉B不喜欢你了
A<---B B说渣男,等我把你东西全部给你
A<---B B将A的东西全部给A
A--->B A向B说再见
Ⅲ 网络层: ip协议
ip协议==>规定网络地址的协议叫做ip协议,它定义的地址成为ip地址,广泛采用v4版本
ipv4,它规定网络地址由32位二进制数组成(4组8位二进制)
范围:0.0.0.0-255.255.255.255
ip地址与子网掩码
ip地址通常写成四段十进制数,例:172.16.15.3
ip地址分成两部分
网络部分:标识子网
主机部分:标识主机
所谓'子网掩码',就是表示子网络特征的一个参数,它在形式上等同于ip地址,也是一个32位二进制数字,它的网络部分全部为1,主机部分全部为0.
知道子网掩码,就能判断任意两个ip地址是否处在同一子网络,方法是将两个ip地址与子网掩码分别进行AND运算,然后比较运算结果是否相同,如果是的话,就表明他们是在同一个子网络中,否则就不是.
ARP:把ip解析成mac地址,用来在子网内部通信
ip数据包
head:长度20到60字节
data:最长为65515字节
Ⅳ 数据链路层: ethernet以太网
以太网协议
一组电信号构成一个数据 帧
每一个数据帧:包含头head和数据data两部分
head包含
发送者\源地址,6个字节
接收者\目标地址,6个字节
数据类型,6个字节
data包含
最短46个字节,最长1500个字节
数据包的具体内容
mac地址-->标识一台计算机在哪个子网内
mac地址:每块网卡出厂时都被制成一个世界上唯一的mac地址,长度为48位2进制,通常由12位16进制数标识(前六位的厂商编号,后六位是流水线号)
Ⅴ 物理层
负责发送电信号bit信号(会把数据链路层发过来的数据转换成电信号)
mac地址+ip地址+port号==>可以标识全世界范围内独一无二的一个基于网络通信的软件
ip+port-->也可以做到全世界范围内独一无二的一个基于网络通信的软件
Ⅵ 网络通信实现
每台主机需具备四要素
本机的IP地址
子网掩码
网关的IP地址
DNS的IP地址
获取四要素两种方式
静态获取:手动配置
动态获取:通过dhcp获取
以太网:ip头:udp头:dhcp数据包
最前面的”以太网标头”,设置发出方(本机)的MAC地址和接收方(DHCP服务器)的MAC地址。前者就是本机网卡的MAC地址,后者这时不知道,就填入一个广播地址:FF-FF-FF-FF-FF-FF。
后面的”IP标头”,设置发出方的IP地址和接收方的IP地址。这时,对于这两者,本机都不知道。于是,发出方的IP地址就设为0.0.0.0,接收方的IP地址设为255.255.255.255。
最后的”UDP标头”,设置发出方的端口和接收方的端口。这一部分是DHCP协议规定好的,发出方是68端口,接收方是67端口。
网友评论