网络基础知识:TCP/IP、IP、端口号、套接字、OSI

网络基础知识:TCP/IP、IP、端口号、套接字、OSI
一、OSI 七层参考模型OSIOpen Systems Interconnection开放系统互连是国际标准化组织 ISO 制定的理论化网络分层框架自上而下共 7 层每层职责独立数据通过逐层封装、解封装完成端到端传输。层级序号层级名称核心功能典型协议 / 技术第 7 层应用层面向用户应用提供具体网络服务接口HTTP、FTP、DNS、SMTP第 6 层表示层数据格式转换、加密解密、压缩解压SSL/TLS、JPEG、字符集转换第 5 层会话层建立、管理、终止通信会话RPC、NetBIOS第 4 层传输层端到端的进程级通信管控传输可靠性UDP、TCP第 3 层网络层逻辑寻址、路由选择、跨网络转发IP、ICMP、OSPF第 2 层数据链路层物理寻址、帧封装、差错检测以太网、MAC 地址、PPP第 1 层物理层传输比特流定义物理介质规则双绞线、光纤、无线电波二、TCP/IP四层模型TCP/IP四层模型将OSI的上三层合并为应用层 具体如下---------------------------------------------------------------------- | TCP/IP层 | 对应OSI层 | ---------------------------------------------------------------------- | 应用层 (Application) | 应用层 表示层 会话层 | | 传输层 (Transport) | 传输层 | | 网际层 (Internet) | 网络层 | | 网络接口层 (Network Access)| 数据链路层 物理层 | ----------------------------------------------------------------------三、IP和端口号①IPIP地址就像是小区门牌号分成IPv4和IPv6。IPv4像“192.168.1.1”这样总共就42亿多个快用完了IPv6是升级版长得很长多到地球每粒沙子都能分到一个②端口号端口号就像是房间号举个例子比如301房的张三或者是客厅、卧室数据包好不容易到了你家楼下但是得知道你是要找301房的微信还是找302房的QQ端口号就是一个16位的数字范围是0 ~ 65535总共65536个。③IPv4 地址· IPv4地址是32位的二进制数如192.168.1.1每一位数字范围是0~255因为每段占 8 个bit2 的 8 次方就是 256从 0 算到 255 正好 256 个数)分类如下----------------------------------------------------------------------------- | 类别 | 前缀 | 地址范围 | 说明 | ----------------------------------------------------------------------------- | A类 | 0xxxxxxx | 1.0.0.0 ~ 126.255.255.255 | 大型网络可容纳约1677万主机 | | B类 | 10xxxxxx | 128.0.0.0 ~ 191.255.255.255 | 中型网络可容纳约6.5万主机 | | C类 | 110xxxxx | 192.0.0.0 ~ 223.255.255.255 | 小型网络可容纳254台主机 | | D类 | 1110xxxx | 224.0.0.0 ~ 239.255.255.255 | 组播地址 | | E类 | 1111xxxx | 240.0.0.0 ~ 255.255.255.255 | 保留实验用途 | -----------------------------------------------------------------------------④ 公网IP地址 vs 私网IP地址不是所有 IP 都能在互联网上跑。有一批地址是专门留给内部网络用的叫私网地址局域网专用出了自家路由器就不认了。RFC 1918定义了私网地址只能在内网使用A类私网10.0.0.0/8B类私网172.16.0.0/12C类私网192.168.0.0/16常见的私网地址段有类型地址范围谁在用A 类私网10.0.0.0 ~ 10.255.255.255大型企业、数据中心B 类私网172.16.0.0 ~ 172.31.255.255中型网络C 类私网192.168.0.0 ~ 192.168.255.255家用路由器、小公司最常见的那个四、套接字只有IP没有端口数据到了电脑门口就迷路了只有端口没有IP数据根本送不到电脑上。它们俩组合在一起在计算机里有个专业名词叫“套接字Socket”写法就是IP地址:端口号。比如192.168.1.100:8080