计算机网络

  关于计算机网络的知识,对于开发的人来说我们关注的式应用层,和物理层。关于其中的数据链路层,网络层这些式网络工程师需要详细了解的。

1.关于计算机的操作系统os,disk,memory,cpu

  在我们的计算机中,对于程序来说,如果需要运行起来,必须有os,disk,memory,cpu。

os:

 操作系统(os),是管理和调用计算机硬件与软件资源的计算机程序

  看起来被人忽视,其实很重要。比如Windows,Linux,这些都是操作系统,os对于程序来说其实非常重要,他是所有数据的入口。只有os才能获取到计算机硬件所传递的数据和信息。比如,我们在python网络通信传递数据和Java中的文件操作时这个都有缓冲区这个概念,为什么需要缓冲区,底层在这里。计算机先通过os操作系统获取物理硬件传递的数据,然后进入内核,内核中的内存,再传递拷贝到计算机的内存区(除了内核),数据到内存,os调用cpu进行快速运算操作。

disk:

  硬盘

cpu:

  中央处理器

memory:

  为了进行区分,我叫它运行内存,一般有32位机和64位机,2^32约等于4G,现在大多数出现了什么64位的机器,8G,128G,256G等等都属于这个范畴。

2.对于计算机网络通信,需要了解通信的大概就行,这其实是一门另外的知识,HCNA,HCNP,HCIE。但是有些知识必须知道。

  计算机通信概述:

    物理层只能传递电信号,0,1。2台计算机如果想要通信,需要有物理介质相连接。

    直接看计算机的网卡信息,如果你看懂了计算机网卡的信息,就能知道计算机通信的大概原理。

        

          连接特定的 DNS 后缀:
          描述: Realtek PCIe GBE 系列控制器
          物理地址: ‎BC-EE-7B-1C-04-8F
          已启用 DHCP: 是
          IPv4 地址: 192.168.2.105
          IPv4 子网掩码: 255.255.255.0
          获得租约的时间: 2017年11月 星期六 11:40:48
          租约过期的时间: 2017年11月 星期六 20:40:49
          IPv4 默认网关: 192.168.2.1
          IPv4 DHCP 服务器: 192.168.2.1
          IPv4 DNS 服务器: 192.168.1.1, 192.168.2.1

  概述:  

    列入A主机和B主机进行通信,首先,再同一个子网内(也就是一个小的局域网内),计算机会通过判断你的ip是不是同一网段,如果是则使用arp请求,目的是为了获取世界上唯一的MAC地址;如果不是同一个网段,则网关回应自己的MAC地址。所以说再数据链路层,是MAC地址通信,采用的是以太网的数据帧分装数据,head  data形式进行封装数据再data中又可封装了网络层的相关信息,源ip和目的ip-data,层层封装,到达另外一端是层层解封。而应用层得到的就是数据部分。有一些一些大概知道即可,NAT(网络地址转换),DHCP(动态获取ip),DNS(域名解析)等等。

    

关于数据二层的通信:(arp协议)
目的:为了获取对方的mac地址
方式:广播方式
arp分为2中情况:
1.在同一个子网内
2.在不同的子网内
工作方式:
1.在同一个子网内:(以192.168.2.2和192.168.2.6通信为例)
首先计算机会先判断,你请求的ip是不是同一个子网,如果是
采用的是以太网的封装(head ,data),在head中有发送者的源mac地址,目的mac采用全F,在同一个子网采用广播的方式发送,
所有的接收者(在同一个子网内)接收到数据包,判断是不是配置好的目的ip,如果是接收并响应请求,并且响应自己的mac地址

2.在不同的网段:(以192.168.2.2和192.168.1.6通信为例,网关为192.168.2.1)
判断ip如果不是同一个子网,arp工作方式一样,只不过网关会响应它的一个mac地址。

综上:在数据二层其实就是mac之间的通信,由于mac地址是全球唯一的,所以保证了通信的唯一信。
如果要跨网段必须通过网关。

    对于开发者来说,我们只需要知道网络通信的三要素即可:协议+ip+端口(端口其实是很重要的)

3.子网划分

   

'''
子网划分,也就是CIDR。也就是想主机位借位,划分成为不同的子网。
这就是三层隔离,也就是ip层隔离
还有一种就是采用vlan进行二层隔离,也就是交换机网口物理隔离
'''

'''
子网划分的步骤:(首先确定ip地址是哪类)
1.确定要划分的子网数,以及每个子网的主机数
2.求出子网数目对应的二进制数的位数N及主机数目对应的二进制位数M
3.对该IP地址的源子网掩码,将其主机地址部分的前N位置1(其余全部置0)或后M位置0(其余全部置1)即得出该IP
地址划分子网后的子网掩码

子网划分其实就是,CIDR技术。
    这个技术有点意思,自己以前学习过HCNA,感觉这个技术挺好玩的。
     

  

原文地址:https://www.cnblogs.com/lizeboLB/p/7784324.html