什么是网络?

Posted 小羊教你来编程

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是网络?相关的知识,希望对你有一定的参考价值。

在这里插入图片描述

目录:

一.网络认识

在这里插入图片描述
网络就是将几部计算机的主机或网络打印机之类的接口通过网络线或者无线网络技术来实现数据的传输.

网络覆盖的范围分为: 局域网.城域网.广域网

二.IP地址

IP地址是每一台主机的唯一标识,例如:192.168.1.1
在这里插入图片描述

在网络通信的每一条数据都会含有两个信息=源端IP地址+对端IP地址

NAT: 是一个网络地址转换器,因为我们平时使用的网络,如果每个人都用一个单独的IP地址,对应的ipv4是无法实现的,我们可以运用NAT将多个用户对应的IP地址转为一个IP地址,只通过一个公有IP地址访问互联网的私有网络中
在这里插入图片描述

DHCP: 动态主机配置协议,因为每个主机都有一个对应的IP地址,如果我们给每个主机都有一个IP地址的话,每个人都会消耗好多的IP地址,但是又因为不是所有的主机都在上网,我们通过一个协议,让网络给上网的主机动态分配IP地址,不上网的就不分配,这样也节省了一大部分的资源.这种协议就叫DHCP协议
在这里插入图片描述

三.端口

端口: 在一台主机上用于表示一个进程,在网卡接收到发往当前主机的一条数据,这条数据由当前主机上的那个进程处理,由端口进行决定.(也就是在网络上接受到的微信消息就通过端口来查到这个信息要微信来处理)
在这里插入图片描述

四.协议

1.协议概念

网络通信协议----在网络传输中约定的数据格式

协议分层: 在复杂的网络通信环境中,根据所使用的协议和服务将网络通信协议划分成多层

2.OSI七层模型 & TCP/IP五层模型

在这里插入图片描述

OSI模型有7层如果需要发送一个数据的时候,会从应用层依次进行封装,最后通过无线网络或者是网线来发送数据,来实现数据的传输.

TCP/IP模型有5层:对于五层模型来说也是依次封装来进行传输,只不过五层模型就没有7层分的那么详细
在这里插入图片描述

五.网络字节序

字节序: cpu在内存中对数据进行存取的数据

1.种类

在这里插入图片描述
在这里插入图片描述

2.对网络通信的影响

1)影响:

在这里插入图片描述

2)解决办法:

在网络通信中订立字节序的标准,网络中通信传输的数据使用指定的字节序:网络字节序(大端字节序)

3)查看主机是哪种字节序

主要理解存储地址的方式,代码很简单的.

#include <stdio.h>
#include<stdlib.h>

typedef union{			//定义枚举
	unsigned short v;		//存入对应的类型
	unsigned char bytes[2];
}Test;

int main()
{
	Test t;			//创建对象
	t.v = 0x1234;	//赋予地址

	if (t.bytes[0] == 0x12 && t.bytes[1] == 0x34)		//当0的低位存低地址,1存高地址则为大端
		printf("大端字节序\\n");
	else if (t.bytes[0] == 0x34 && t.bytes[1] == 0x12)	//反之则为小端
		printf("小端字节序\\n");
	else
		printf("error");

	system("pause"); 
	return 0;
}

这是对于网络知识的简单总结,后期有新的认识会继续总结.

以上是关于什么是网络?的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段14——Vue的axios网络请求封装

片段和活动之间的核心区别是啥?哪些代码可以写成片段?

201555332盛照宗—网络对抗实验1—逆向与bof基础

20155201 李卓雯 《网络对抗技术》实验一 逆向及Bof基础

C# 最有用的(自定义)代码片段是啥? [关闭]

为啥ip片段必须是8字节的倍数