网络认识
目录:
一.网络认识
网络就是将几部计算机的主机或网络打印机之类的接口通过网络线或者无线网络技术来实现数据的传输.
网络覆盖的范围分为: 局域网.城域网.广域网
二.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;
}
这是对于网络知识的简单总结,后期有新的认识会继续总结.