【JavaEE初阶】第五节.网络原理之初始

作者简介:大家好,我是未央;

博客首页:未央.303

系列专栏:JavaEE初阶

每日一句:人的一生,可以有所作为的时机只有一次,那就是现在!!!!

前言

1.1 了解独立模式

1.2了解网络互连

1.3了解局域网LAN

1.4了解广域网WAN

二、网络通信基础重要概念

2.1 IP地址

2.2 端口号

2.3 认识协议 (最核心的概念)

2.4 协议分层

2.5 IOS 七层模型

2.6 TCP/IP五层(或四层)模型

三.封装和分用(重点)

总结



前言

今天我们将进入到有关网络原理的学习当中,我们会接触一些基础的网络原理的知识和通信的基础,这都是我们必须要掌握的内容!!!!


一、网络的基础知识的了解

1.1 了解独立模式

1)概念:计算机之间相互独立;

2)图示解析:


1.2了解网络互连

概念:将多台计算机连接在一起,完成数据共享。

数据共享本质网络数据传输,即计算机之间通过网络来传输数据,也称为网络通信。
根据网络互连的规模不同,可以划分为局域网和广域网

1.3了解局域网LAN

1)概念:

局域网,即 Local Area Network,简称LAN

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

2)局域网组建网络的方式分类

(1)基于网线直连
【JavaEE初阶】第五节.网络原理之初始_第1张图片

                                                                                                                                                                                                       

(2)基于集线器组建

【JavaEE初阶】第五节.网络原理之初始_第2张图片

                                                                                                                                                                                                       

(3)基于交换机组建:
【JavaEE初阶】第五节.网络原理之初始_第3张图片

                                                                                                                                                                                                        

(4)基于交换机和路由器组建:
【JavaEE初阶】第五节.网络原理之初始_第4张图片

注意:

【JavaEE初阶】第五节.网络原理之初始_第5张图片

 【JavaEE初阶】第五节.网络原理之初始_第6张图片

                                                                                                                                                                                                      

交换机和路由器的概念:

交换机:是把多个机器连接到了一个局域网当中;

路由器:   是连接了多个局域网;

图示说明:

【JavaEE初阶】第五节.网络原理之初始_第7张图片

面试重点考点:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

交换机和路由器的功能都是用来组建局域网的;

交换机和路由器的区别:

交换机是工作在数据链路层;

路由器是工作在网络层;

 集线器的概念:

【JavaEE初阶】第五节.网络原理之初始_第8张图片

1.4了解广域网WAN

1)概念:

广域网,即 Wide Area Network,简称WAN
通过路由器,将多个局域网连接起来,在物理上组成很大范围的网络,就形成了广域网
广域网内部的局域网都属于其子网。

二、网络通信基础重要概念

2.1 IP地址

1)概念:

ip地址主要用于标识网络主机、其他网络设备(如路由器)的网络地址。简单说,ip地址用于定位主机的网络地址

2)举例说明:

就像我们发送快递一样,需要知道对方的收货地址,快递员才能将包裹送到目的地。
3)格式:


2.2 端口号

1)概念:

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

2)举例说明:

类似发送快递时,不光需要指定收货地址(ip 地址),还需要指定收货人(端口号)。

3)格式:

端口号是0~65535范围的数字,在网络通信中,进程可以通过绑定一个端口号,来发送及接收网络数据。
4)注意事项:
两个不同的进程,不能绑定同一个端口号,但一个进程可以绑定多个端口号。

了解:

一个进程启动后,系统会随机分配一个端口(启动端口)

程序代码中,进行网络编程时,需要绑定端口号(收发数据的端口)来发送、接收数据。

进程绑定一个端口号后,fork一个子进程,可以实现多个进程绑定一个端口号,但不同的进程不能绑定同一个端口号。


2.3 认识协议 (最核心的概念)

1)概念:

网络协议的简称;网络协议是网络通信(即网络数据传输经过的所有网络设备都必须共同遵从 的一组约定、规则。

如怎么样建立连接、怎么样互相识别等。只有遵守这个约定,计算机之间才能相互 通信交流。
通常由三要素组成:

【JavaEE初阶】第五节.网络原理之初始_第9张图片

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

2)作用 :

为什么需要协议?

就好比见网友,彼此协商胸口插支玫瑰花见面,这就是一种提前的约定,也可以称之为协议。
                                                                                                                                                                                                     
【JavaEE初阶】第五节.网络原理之初始_第10张图片  

【JavaEE初阶】第五节.网络原理之初始_第11张图片

2.4 协议分层

1)为什么要协议分层:

2) 概念:

3)两种分层方式: 

【JavaEE初阶】第五节.网络原理之初始_第12张图片

 注意:

【JavaEE初阶】第五节.网络原理之初始_第13张图片

4)作用:

分层最大的好处,类似于面向接口编程:定义好两层间的接口规范,让双方遵循这个规范来对接。

在代码中,类似于定义好一个接口,一方为接口的实现类(提供方,提供服务),一方为接口的使用类
(使用方,使用服务):
1.对使用方来说下层协议给上层协议提供服务,上层调用下层协议(实现上层协议的人,不必考虑下层协议的细节)
2.对提供方来说:解耦合;
图示分析: 
【JavaEE初阶】第五节.网络原理之初始_第14张图片

2.5 IOS 七层模型

  1)IOS的定义:

OSI 七层模型既复杂又不实用:所以 OSI 七层模型没有落地、实现。
实际组建网络时,只是以 OSI 七层模型设计中的部分分层,
也即是以下 TCP/IP 五层(或四层)模型来 实现。所以我们重点关注TCP/IP 五层(或四层)模型;

2.6 TCP/IP五层(或四层)模型

1)概念:

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

2)图示说明:

【JavaEE初阶】第五节.网络原理之初始_第15张图片

3)各个层的作用:

【JavaEE初阶】第五节.网络原理之初始_第16张图片

举例说明各个层的作用:(加强理解)

 【JavaEE初阶】第五节.网络原理之初始_第17张图片

 可以看作在网上买东西实例来联想分析;

【JavaEE初阶】第五节.网络原理之初始_第18张图片

 注意:

只有应用层是我们程序员写代码处理来实现的;

下面的四层是由操作系统,硬件设备处理好了的;

网络编程的主要工作,也就是写应用层的代码,来处理应用层的协议数据;

4)理解应用层和数据链路层

举实例分析:

比如我从西安要回老家东北;我就需要

1.规划路线:

【JavaEE初阶】第五节.网络原理之初始_第19张图片

 2.确定好路线后,就要选择交通工具;

【JavaEE初阶】第五节.网络原理之初始_第20张图片

注意:

有些资料上面把TCP/IP称为四层协议;

物理层属于硬件范畴;很多时候,就不考虑;我们还是称为5层;

三.封装和分用(重点)

1)概念:

描述了网络是如何传输数据的;

注意:这里的封装和面向对象的封装继承多态不同;

举例说明:

现在有一个主机A和主机B;

主机A给主机B发送了信息hello;

在网络中的体现:

1.应用层的处理;

【JavaEE初阶】第五节.网络原理之初始_第21张图片

【JavaEE初阶】第五节.网络原理之初始_第22张图片

 应用层数据报:

【JavaEE初阶】第五节.网络原理之初始_第23张图片

                                                                                                                                                                                                     

 2.接下来就要把这个数据包给传输层(操作系统内核)

传输层会根据当前使用的传输层协议,给应用层数据报,进行进一步的组装;

【JavaEE初阶】第五节.网络原理之初始_第24张图片

                                                                                                                                                                                                     

3.继续把这个报头发送给网络层;

网络层,主要使用的是ip协议,再进一步的组装;

所谓的加上报头,本质就是“字符串的拼接” 

                                                                                                                                                                                                    

4.这个数据组合好,再交给数据链路层;

数据链路层,比如使用以太网再进一步进行组装;

【JavaEE初阶】第五节.网络原理之初始_第25张图片

此时就构成了一个以太网数据帧; 

                                                                                                                                                                                                     

5.再把这些数据交给物理层;

物理层拿到后就把这些二进制序列转化为光信号和电信号;

把光电信号发送出去即可;

上述从上到下,依次添加报头的过程就叫做封装

【JavaEE初阶】第五节.网络原理之初始_第26张图片

2)分用的概念;

当主机B收到上述数据的时候,就是封装的“逆过程”;就叫分用;

举例说明:

 1.物理层;

【JavaEE初阶】第五节.网络原理之初始_第27张图片

2.数据链路层;

【JavaEE初阶】第五节.网络原理之初始_第28张图片

3.网络层;

【JavaEE初阶】第五节.网络原理之初始_第29张图片

4.传输层;

【JavaEE初阶】第五节.网络原理之初始_第30张图片 5.应用层;

【JavaEE初阶】第五节.网络原理之初始_第31张图片

 上述过程也就体现了网路通信的过程中,各个层次之间是如何工作的;

【JavaEE初阶】第五节.网络原理之初始_第32张图片

经典的路由器,是封装分用到网路层;

经典的交换机,是封装分用到数据链路层;    


总结

今天我们学习了有关计算机网络中网络原理的一些基础的内容,让我们对计算机网络有了一定认识;认识到了一些基础的概念等等;下一节内容我们将更加深入的了解网络编程的实现;对网络编程有更加完善的学习!!!!!!!!!!!!!

你可能感兴趣的:(JavaEE初阶,java-ee,java,网络原理)