OSI模型与数据的封装

1、OSI模型

上层
   |
   |		七层模型						四层模型
   |
   |		  应用层
   |	      表示层							应用层     http/ftp/ssh/ftps
   |	      会话层
-----------------------------------------------------------------------
   |		· 传输层							传输层      tcp/udp
-----------------------------------------------------------------------
   |		  网络层							网络层     ip-> ipv4/ipv6
-----------------------------------------------------------------------
   |		 数据链路层					网络接口层   以太网帧协议
 底层       物理层

OSI模型与数据的封装_第1张图片

2、数据的封装

OSI模型与数据的封装_第2张图片

# 两台主机A,B
	1.A给B发送字符串“hello,world”,字符串不会以这种形态发送到Internet,需要在发送之前进行封装
	2.封装是由操作系统或者调用的API自动完成的,程序员无需关心
	3.如果程序员需要封装数据,一般是在应用层做处理,应用层数据可封装也可以不封装

数据 "hello,world” 在应用层进行发送
	1.在应用层对这个字符串封装(可选,程序员做的)
	2.数据往下走->传输层->根据协议格式打包数据,   tcp
	3.数据往下走->网络层->根据协议格式打包数据,ip
	4.数据往下走->网络接口层->根据协议格式打包数据,以太网帧协议
	5.数据通过网口发送给B

B接收数据,拆包
	1.网络接口层->根据协议格式拆包,以太网帧协议拆开
	2.得到了网络层的包->拆包
	3.传输层的包->拆包
	4.应用层的包
	5.应用层如果使用协议封装了数据继续拆包,如果没有封装得到了“hello, world” 

你可能感兴趣的:(网络编程,网络)