网络原理——为什么高手必知网络编程

本文介绍了网络互连的基础知识,包括局域网(LAN)和广域网(WAN)的构成与区别。网络通信的核心是IP地址和端口号,它们分别用于标识主机位置和进程。此外,文章还探讨了网络分层的TCP/IP模型,强调了协议和封装分用在数据传输中的作用。了解这些对于网络编程至关重要,因为它们构成了网络通信的基础。
摘要由CSDN通过智能技术生成

目录

一. 网络互连

1.1 局域网

1.2 广域网

二. 网络通信 

2.1 IP地址

2.2 端口号

三. 网络分层

3.1 协议

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

3.3 封装和分用


为什么高手必知网络编程?

       我们生活在网络时代。独立的计算机系统不可能使我们走向世界,在地球的任何地方进行信息交流。“秀才不出门,便知天下事。”网络通信和互联网的应用,不仅使我们全知天下事,而且能做天下事。

       那么,联网的计算机系统如何实现网络通信呢?

一. 网络互连

随着时代的发展,越来越需要计算机之间互相通信,共享软件和数据,即以多个计算机协同工作来完成 业务,就有了网络互连。

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

数据共享:本质是网络数据传输,即计算机之间通过网络来传输数据,也称为网络通信。

根据网络互连的规模不同,可以划分为局域网广域网

1.1 局域网

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

Local 即标识了局域网是本地,局部组建的一种私有网络。

局域网内的主机之间能方便的进行网络通信,又称为内网;局域网和局域网之间在没有连接的情况下, 是无法通信的。

局域网组建网络的方式有很多种:

(1)基于网线直连

(2)基于集线器组建

(3)基于交换机组建

(4)基于交换机和路由器组建 

1.2 广域网

广域网,即 Wide Area Network,简称WAN

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


二. 网络通信 

       网络互连的目的是进行网络通信,也即是网络数据传输,更具体一点,是网络主机中的不同进程间,基 于网络传输数据。 那么,在组建的网络中,如何判断到底是从哪台主机,将数据传输到那台主机呢?这就需要使用IP地址 来标识。

2.1 IP地址

概念:

       IP地址主要用于标识网络主机、其他网络设备(如路由器)的网络地址。简单说,IP地址用于定位主机的网络地址( 就像我们发送快递一样,需要知道对方的收货地址,快递员才能将包裹送到目的地)。

格式:

       IP地址是一个32位的二进制数,通常被分割为4个“8位二进制数”(也就是4个字节),如: 01100100.00000100.00000101.00000110。

       通常用“点分十进制”的方式来表示,即 a.b.c.d 的形式(a,b,c,d都是0~255之间的十进制整数)。如: 100.4.5.6。

2.2 端口号

概念:

       在网络通信中,IP地址用于标识主机网络地址端口号可以标识主机中发送数据、接收数据的进程。简单说:端口号用于定位主机中的进程。类似发送快递时,不光需要指定收货地址(IP地址),还需要指定收货人(端口号)。

格式:

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


三. 网络分层

3.1 协议

概念:

       协议,网络协议的简称,网络协议是网络通信(即网络数据传输)经过的所有网络设备都必须共同遵从的一组约定、规则。如怎么样建立连接、怎么样互相识别等。只有遵守这个约定,计算机之间才能相互通信交流。

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

       TCP/IP是一组协议的代名词,它还包括许多协议,组成了TCP/IP协议簇。 TCP/IP通讯协议采用了5层的层级结构,每一层都呼叫它的下一层所提供的网络来完成自己的需求。

  • 应用层:负责应用程序间沟通;HTTP/HTTPS/DNS等协议
  • 传输层:负责两台主机之间的数据传输;UDP/TCP等协议
  • 网络层:负责地址管理和路由选择;IP/ICMP等协议
  • 数据链路层:负责设备之间的数据帧的传送和识别
  • 物理层:负责光/电信号的传递方式

3.3 封装和分用

  • 不同的协议层对数据包有不同的称谓,在传输层叫做段(segment),在网络层叫做数据报 (datagram),在链路层叫做帧(frame)。
  • 应用层数据通过协议栈发到网络上时,每层协议都要加上一个数据首部(header),称为封装 (Encapsulation)。
  • 首部信息中包含了一些类似于首部有多长,载荷(payload)有多长,上层协议是什么等信息。
  • 数据封装成帧后发到传输介质上,到达目的主机后每层协议再剥掉相应的首部,根据首部中 的 "上层协议字段" 将数据交给对应的上层协议处理。

下图为数据封装的过程

下图为数据分用的过程

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值