网络编程基础第一讲.网络模型
一丶简介
在讲解网络编程的时候.我们要了解一下网络的基础知识
1.OSI模型. 也就是七层
2.网络设备
3.IP
4.端口
二丶.OSI模型. 也就是七层架构
osi规定了网络的七层架构
如下图:
在网络模型中.发送端是使用自上而下的发送模型来发送数据
首先是应用层. 表示层....等等.依次类推.
并不是所有网段都是经过七层. 同一网段可能就是用数据链路层跟物理层
七层架构对应的关系.
应用层:
很多协议就是应用层. 比如一个网站 www.baidu.com
他首先就是调用一个DNS协议.去DNS服务器查询IP. 然后调用Http协议进行访问.
DNS Http都是工作在应用层上面的协议.
还有 ftp ....
表示层:
在互联网时代.表示层代表的就是转换. 因为不同的操作系统跟硬件是不同的.
数据的表示是不一样的.所以进行转化才能通信.
会话层 :
会话层就是两个层次之间的逻辑.
传输层:
顾名思义,是用来传输数据的.主要就是端对端.主机对主机的一个传送. 提供一些协议直接传送.
主要就是 TCP 跟 UDP 协议.
网络层:
主要就是把本地的一个数据.发送给另一个设备的网络. 另一个设备的网络很可能是一个很远的网络
网络层最主要的协议就是IP协议.
数据链路层
主要就是把数据送到本地的网络上.比如局域网.
物理层:
网卡.设备.路由等等.
3.TCP IP模型
TCP IP 两个协议.上图则是对应的osi模型.
了解即可.
三丶IP 端口解析
1.什么是IP
IP(internet protocol) 网络之间互连的协议, 是非常重要的网络协议.目前整个互联网都是基于IP的
IPV4 使用了一个32位的二进制地址. 理论上有43亿多的IP地址可以使用.是用来表示主机具有唯一性的.
IPV6 现在也出现了IPV6. 因为人口很多全球总人数很多了.IPV4已经不够用了.
IP重要的功能就是区分主机,以及寻址. 意思就是IP没人都有一个.我要找到这个IP才可以进行发送数据
2.什么是端口
端口(port) 可以认为是设备与外界通讯交流的出口. 意思就是数据都会通过端口发送出去.
端口可分为虚拟端口跟物理端口.
虚拟端口:
虚拟端口指的就是计算机内部或者交换机路由器内的端口.不可见.
物理端口:
子网掩码
子网掩码跟IPV4地址是一个and关系. and之后就是一个我们主机的IP地址.
网关:
网关就是路由器进行拨号上网.