网络原理(IP、端口、协议、封装、分用)

目录

一、网络分类

1、局域网

2、广域网

二、网络基础

1、IP地址

2、端口号

3、协议

4、五元组

 三、协议分层

1、分层的作用

2、OSI七层模型

3、TCP/IP五层(四层)模型

四、封装和分用


一、网络分类

1、局域网

是本地局部组建的一种私有网络。局域网内的主机之间能够方便的进行通信,又称为内网。局域网和局域网之间在没有连接的情况下,是无法进行通信的。

局域网组建方式如下:

  • 网络直连;
  • 集线器连接多台主机;
  • 交换机连接多台主机;
  • 路由器连接多台主机(可以再次使用集线器和交换机来连接主机)

此时局域网内的主机之间可以相互访问,还不能访问局域网外的主机;需要借助光猫连接到公网上,才能访问局域网外的主机。

2、广域网

公网(外网,互联网)。通过路由器,将多个局域网连接起来,物理上组成很大范围的网络,就形成广域网。广域网内部的局域网都是其子网。

二、网络基础

1、IP地址

作用:定位网络中的主机。

某个网络中的IP地址必须是唯一的(如果一个网络包含在另一个网络中【公网】,公网是看不到局域网内部的IP地址的)。公网中的IP是唯一的,局域网内的IP也是唯一的,但不同的局域网之间就可能有重复的IP。

格式:

IP地址是32位的二进制数,通常被分割为4个“8位二进制”。如:01100100.00000100.00000101.00000110。

通常用点分十进制的方式表示。即a.b.c.d的形式。如:100.4.5.6。

特殊IP:

本机环回测试IP:127.0.0.1

本机环回主要用于本机到本机网络通信(系统内部为了性能,不会走网络的方式传输)。

2、端口号

端口号用于定位主机中的进程。在网络通信中,IP地址用于标识主机的网络地址,端口号可以标识主机中发送数据、接收数据的进程。

格式:

端口号是0~65535之间的数字。在网络通信中,进程可以通过绑定一个端口号,来接受和发送网络数据。

【注】两个不同的进程,不能绑定同一个端口,但一个进程可以绑定多个端口。

3、协议

网络中经过的网络设备都要遵守的约定。只有遵守这个约定,计算机之间才能相互通信交流。

网络协议的三要素:

  • 语法:数据与控制信息的结构和格式
  • 语义:需要发出何种控制信息,完成何种动作以及做出何种相应
  • 时序:时间实现顺序的详细说明

协议最终体现为在网络上传输的数据包的格式。

4、五元组

标识一次网络通信,必须的五个信息:

  1. 源IP:标识源主机;
  2. 源端口号:标识源主机中的源进程;
  3. 目的IP:标识目的主机;
  4. 目的端口号:标识目的主机中的目的进程。
  5. 协议号:双方约定的数据传输格式。

网络原理(IP、端口、协议、封装、分用)_第1张图片

 三、协议分层

1、分层的作用

分层最大的好处,类似于面向对象编程:定义好两层间的接口规范,让双方遵循这个规范来对接。在代码中,类似于使用一个接口,一方为接口的实现类(提供方,提供服务),一方为接口的使用类(使用方,使用服务):

  • 对于使用方,不关心提供方如何实现,只需要使用接口即可;
  • 对于提供方来说,利用封装的特性,隐藏了实现的细节,只需要开发接口即可。

2、OSI七层模型

OSI:Open System Interconnection,开放系统互连。

OSI七层模型划分为以下七层:

分层名 作用
应用层 应用程序所在的分层
表示层 数据的展现形式
会话层 约定建立和断开连接的方式
传输层 负责数据的可靠运输
网络层 地址管理和路由选择
数据链接层 互联设备之间传送和识别数据帧
物理层 0/1广电信号

OSI七层模型既复杂又不实用。所有七层模型没有实现。

3、TCP/IP五层(四层)模型

OSI的表示层和会话层去掉就是五层模式,再去掉物理层,就是四层模型。

分层名称 作用 代表硬件/软件 代表性协议
应用层

应用程序所在的分层

(约定两个进程使用一样的协议)

进程 http、https、DNS、NAT/NAPYT
传输层 负责可靠传输 操作系统(工作在下四层) TCP、UDP
网络层 地址管理和路由选择 路由器(Router) IP协议
数据链路层 互联设备的传送和识别数据帧 交换机(Switcher)(工作在下两层) 以太网帧、ARP
物理层 0/1光电信号 集线器(Hub)

网络设别所在分层:

  • 对于一台主机,操作系统实现了下四层;
  • 对于一台路由器,实现了下三层;
  • 对于一台交换机,实现了下两层;
  • 对于一个集线器,只实现了物理层。

四、封装和分用

  • 不同的协议层对数据包又不同的称谓,传输层叫做段(segment),在网络层叫做数据报(datagram),在链路层叫做帧(frame)。

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

封装的过程:

发送数据的时候,需要将数据按网络分层,从高到低的顺序进行封装。

网络原理(IP、端口、协议、封装、分用)_第2张图片

 分用的过程:

接收数据时,需要按照网络分层,从低到高的顺序,进行分用(解析)

网络原理(IP、端口、协议、封装、分用)_第3张图片

你可能感兴趣的:(javaee,网络,tcp/ip,网络协议)