局域网简称LAN,局域网是本地,局部组建的一种私有网络。局域网内的主机之间能方便的进行网络通信,称为内网;局域网和局域网之间在没有连接的情况下是无法通信的。
广域网简称WAN,广域网是通过路由器,将多个局域网连接起来在物理上组成很大范围的网络,形成了广域网。广域网内部的局域网都属于其子网。
概念: IP地址主要用于标识网络主机、其他网络设备(如路由器)的网络地址。简单说,IP地址用于定位主 机的网络地址。
格式: IP地址是一个32位的⼆进制数,通常被分割为4个“8位二进制数”(也就是4个字节)。通常用" 点分十进制 "的方法来表示,例如:127.0.0.1。
概念: 在网络通信中,IP地址用于标识主机网络地址,端口号可以标识主机中发送数据、接收数据的进程。简单说:端口号用于定位主机中的进程。
格式: 端口号是0~65535范围的数字,在网络通信中,进程可以通过绑定一个端口号,来发送及接收网络数据。
引入以下问题: 有了IP地址和端口号,可以定位到网络中唯⼀的⼀个进程,但还存在一个问题,网络通信是基于二进 制0/1数据来传输,如何告诉对方发送的数据是什么样的呢? 网络通信传输的数据类型可能有多种:图片,视频,文本等。同⼀个类型的数据,格式可能也不同, 如发送一个文本字符串“你好!”:如何标识发送的数据是文本类型,及文本的编码格式呢? 基于网络数据传输,需要使用协议来规定双方的数据格式。
概念: 协议,网络协议的简称,网络协议是网络通信(即网络数据传输)经过的所有网络设备都必须共同遵 从的⼀组约定、规则。如怎么样建立连接、怎么样互相识别等。只有遵守这个约定,计算机之间才能 相互通信交流。 协议最终体现为在网络上传输的数据包的格式。协议就是一种" 约定 ",通信双方对于传输的数据的格式/含义进行的约定。 作用: 为什么需要协议? 计算机之间的传输媒介是光信号和电信号。通过"频率"和"强弱"来表示0和1这样的信息。要想传递 各种不同的信息,就需要约定好双方的数据格式。
在TCP/IP协议中,用五元组来标识⼀个⽹络通信:
网络通信非常复杂,并不是通过一个协议就可以解决所有问题的,面对的是很多协议。为了让这些协议不乱有效的进行相互配合,聪明的程序员对协议进行了分层。上层协议调用下层协议,下层协议给上层协议提供服务。
什么是协议分层?
举个例子,协议分层类似于打电话。在打电话时我们只需要使用电话提供给我们的服务就可以了,不需要关心电话工作的原理。因此就是上层协议不必关心下层协议的细节就可以直接使用。同样,电话只需要负责提供传递信息的服务即可,不仅可以传递汉语,同样可以传递英语。通信协议中的每一层都可以灵活替换

分层的作用: 分层最大的好处,类似于面向接口编程:定义好两层间的接口规范,让双方遵循这个规范来对接。 在代码中,类似于定义好⼀个接口,一方为接口的实现类(提供方,提供服务),一方为接口的使用类(使用方,使用服务):
这样能更好的扩展和维护。
OSI七层网络模型是⼀个逻辑上的定义和规范:把网络从逻辑上分为了7层。 OSI七层模型是⼀种框架性的设计方法,其最主要的功能使就是帮助不同类型的主机实现数据传输。
划分为以下七层
分层名称 | 功 能 | 每层功能概览 |
|---|---|---|
应用层 | 针对特定应用的协议。 | 针对每个应用的协议电子邮件 ↔ 电子邮件协议远程登录 ↔ 远程登录协议文件传输 ↔ 文件传输协议 |
表示层 | 设备固有数据格式和网络标准数据格式的转换。 | 接收不同表现形式的信息,如文字流、图像、声音等(将设备数据格式转换为网络标准格式) |
会话层 | 通信管理。负责建立和断开通信连接(数据流动的逻辑通路)。管理传输层以下的分层。 | 何时建立连接,何时断开连接以及保持多久的连接? |
传输层 | 管理两个节点之间的数据传输。负责可靠传输(确保数据被可靠地传送到目标地址)。 | 是否有数据丢失? |
网络层 | 地址管理与路由选择。 | 经过哪个路由传递到目标地址? |
数据链路层 | 互连设备之间传送和识别数据帧。 | 数据帧与比特流之间的转换分段转发 |
物理层 | 以“0”、“1”代表电压的高低、灯光的闪灭。界定连接器和网线的规格。 | 比特流与电子信号之间的切换连接器与网线的规格 |
OSI 七层模型既复杂又不实用:所以OSI七层模型没有落地、实现。 实际组建用络时,只是以OSI七层模型设计中的部分分层,也即是以下TCP/IP五层(或四层)模型来 实现。
TCP/IP是一组协议的代名词,它还包括许多协议,组成了TCP/IP协议簇。 TCP/IP通讯协议采用了5层的层级结构,每一层都呼叫它的下一层所提供的网络来完成自己的需求。
物理层考虑的比较少。因此很多时候也可以称为TCP/IP四层模型。或者物理层可以和数据链路层合并为一个,都是和硬件设备直接相关的。
不同的协议层对数据包有不同的称谓,在传输层叫做段(segment),在网络层叫做数据报(datagram),在链路层叫做帧(frame)。
下图为数据封装的过程

以上主要简单介绍了网络通信基础知识的一些内容,如有问题,望各位大佬给出指正,愿各位看到这里都能有所收获。