【计算机网络】初识网络(TCP / IP五层模型 + 网络协议栈和操作系统关系 + 网络传输基本流程 + 数据包封装和分用)

【计算机网络】初识网络(TCP / IP五层模型 + 网络协议栈和操作系统关系 + 网络传输基本流程 + 数据包封装和分用)

前言

"协议" 是一种约定

网络协议,就是为解决不同厂商的计算机、操作系统、网络硬件间的通信问题,而共同约定并遵守的一套统一技术标准与规则集合

OSI七层模型

将服务、接口和协议这三个概念明确地区分开来,帮助不同类型的主机实现数据传输。

通过七个层次化的结构模型使不同的系统不同的网络之间实现可靠的通讯

TCP/IP五层模型

TCP/IP通讯协议采用了5层的层级结构,每一层都呼叫它的下一层所提供的网络来完成自己的需求

  1. 物理层: 负责光/电信号的传递方式。物理层的能力决定了最大传输速率、传输距离、抗干扰性等,集线器工作在物理层.
  2. 数据链路层: 负责设备之间的数据帧的传送和识别。. 交换机工作在数据链路层
  3. 网络层: 负责地址管理和路由选择;例如在IP协议中, 通过IP地址来标识一台主机, 并通过路由表的方式规划出两台主机之间的数据传输的线路(路由). 路由器工作在网路层
  4. 传输层: 负责两台主机之间的数据传输,如传输控制协议 (TCP), 能够确保数据可靠的从源主机发送到目标主机
  5. 应用层: 负责应用程序间沟通,网络编程主要就是针对应用层

一般而言

主机:它的操作系统内核实现了从传输层到物理层的内容

路由器: 实现了从网络层到物理层;

交换机:实现了从数据链路层到物理层;

集线器:只实现了物理层

网络协议栈和操作系统关系

网络传输基本流程

同一个网段 内的两台主机进行文件传输:

跨网段 的主机的文件传输,数据从一台计算机到另一台计算机传输过程中要经过一个或多个路由器

数据包封装和分用


不同的协议层对数据包有不同的称谓:

传输层叫做 ,网络层叫做数据报 ,链路层叫做

应用层数据通过协议栈发到网络上时,每层协议都要加上一个数据首部,称为封装

首部信息中包含了一些类似于首部有多长, 载荷有多长, 上层协议是什么等信息.

数据封装成帧后发到传输介质上,到达目的主机后每层协议再剥掉相应的首部, 根据首部中的 "上层协议字段" 将数据交给对应的上层协议处理


网络通信基本脉络图:

网络中的地址管理

IP地址(IPv4 / IPv6)

IP地址是在IP协议中, 用来标识网络中不同主机的地址 ;

对于IPv4来说, IP地址是一个4字节, 32位的整数;

通常使用 "点分十进制" 的字符串表示IP地址, 例如 192.168.0.1 ; 用点分割的每一个数字表示一个字节, 范围是 0 - 255;

MAC地址

MAC地址用来识别数据链路层中相连的节点 ;

长度为48位, 及6个字节. 一般用16进制数字加上冒号的形式来表示(例如: 08:00:27:03:fb:19)

在网卡出厂时就确定了, 不能修改. mac地址通常是唯一的(虚拟机中的mac地址不是真实的mac地址, 可能会冲突;

相关推荐
当下新鲜事1 小时前
车间实测记录:三菱电机MR-J5伺服与压力控制方案的场景适配
网络·物联网·业界资讯
门思科技2 小时前
开源网关有哪些:主流类型梳理
网络·python·物联网
llilian_163 小时前
北斗授时卡同步解决方案 gnss授时卡 计算机时间同步板卡
大数据·网络·人工智能·功能测试·51单片机
Vicky_time3 小时前
跨境物流系统架构:美国海外仓与FBA中转海外仓选型技术方案评测
网络·人工智能
多多鼠5 小时前
System Prompt 的“版本漂移”问题:从变更管理到 A/B 测试体系
开发语言·网络·人工智能·python·langchain
Allen_LVyingbo6 小时前
三甲医院医疗AI代码库管理系统研究(上)
网络·transformer·知识图谱·健康医疗
迪康coolmu6 小时前
企业文件外发管控落地实践 —— 基于迪康端点安全一体化管理系统
运维·网络·经验分享·安全
小此方7 小时前
Linux网络(十二):HTTP短连接与长连接:从Connection机制到Cookie、Session,彻底理解HTTP的无状态
服务器·网络·http
永远不会出bug7 小时前
什么是内网穿透?
网络
raindayinrain8 小时前
Linux 网络编程--套接字选项
linux·网络·套接字选项