网络协议及IP地址分类

网络协议(Protocol)是一种特殊的软件,是计算机网络实现其功能的最基本机制。网络协议的本质是规则,即各种硬件和软件必须遵循的共同守则。网络协议并不是一套单独的软件,它融合于其他所有软件系统中,因此可以说,协议在网络中无处不在。网络协议遍及OSI通信模型的各个层次,从我们非常熟悉的TCP/IP、HTTP、FTP协议,到OSPF、IGP等协议,有上千种之多。对于普通用户而言,不需要关心太多的底层通信协议,只需要了解其通信原理即可。在实际管理中,底层通信协议一般会自动工作,不需要人工干预。但是对于第三层以上的协议,就经常需要人工干预了,比如TCP/IP协议就需要人工配置它才能正常工作。

局域网通常用的三种协议分别是TCP/IP协议、NetBEUI协议和IPX/SPX协议。

TCP/IP协议毫无疑问是这三大协议中最重要的一个,作为互联网的基础协议,没有它就根本不可能上网,任何与互联网有关的操作都离不开TCP/IP协议。不过TCP/IP协议也是这三大协议中配置起来最麻烦的一个,单机上网还好,而通过局域网访问互联网的化,就要详细设置IP地址、网关、子网掩码、DNS服务器等参数。

TCP/IP协议族中包括上百个互为关联的协议,不同功能的协议分布在不同的协议层,几个常用协议如下:

1.  Telnet(Remote Login):提供远程登录功能,一台计算机用户可以登录到远程的另一台计算机上,如同在远程主机上直接操作一样。

2.  FTP(File Transfer Protocol):远程文件传输协议,允许用户将远程主机上的文件拷贝到自己的计算机上。

3.  SMTP(Simple Mail Transfer Protocol):简单邮政传输协议,用于传输电子邮件。

4.  NFS(Network File Server):网络文件服务器,可使多台计算机透明地访问彼此的目录。

5.  UDP(User Datagram Protocol):用户数据包协议,它和TCP一样位于传输层,和IP协议配合使用,在传输数据时省去包头,但它不能提供数据包的重传,所以适合传输较短的文件。

 

HTTP协议是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用和发展,得到不断完善和扩展。目前在www中使用的是HTTP/1.0的第六版,HTTP/1.1的规范化工作正在进行当中,而且HTTP-NG(Next Generation of HTTP)的建议已经提出。

HTTP协议的主要特点可概况如下:

1.  支持客户/服务器模式。

2.  简单快速:客户向服务器请求服务时,只需传输请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了客户于服务器联系的类型不同。由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。

3.  灵活:HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。

4. 无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并受到客户的应答后,即断开连接。采用这种方式可以节省传输事件。

5.  无状态:HTTP协议是无状态协议。无状态是指协议对于事物处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。

 

一、IP地址和子网掩码

IP地址用于在网络上标识唯一一台机器。根据RFC791的定义,IP地址由32位二进制数组成(四个字节),表示为用原点分成每组3位的12位十进制数字(xxx.xxx.xxx.xxx),每个3位数代表8位二进制数(一个字节)。由于1个字节所能表示的最大数位255,因此IP地址中每个字节为0-255之间的值;但是0和255有特殊含义,255代表广播地址,0用于指定网络地址号(在地址末端)或节点地址(在地址开始)。根据IP地址中表示网络地址字节数的不同将IP地址划分为三类,A类、B类和C类。

类别A类B类C类D类
使用范围超大型网络(百万结点)中等规模的网络(上千节点)小网络(最多254个结点)-
网络地址第一个字节前两个字节前三个字节四个字节
节点地址后三个字节后两个字节第四个字节-
网络地址范围1-127128-191192-223224-239
子网掩码255.0.0.0255.255.0.0255.255.255.0255.255.255.255

有时为了方便网络管理,需要将网络划分为若干个网段。为此,必须打破传统的8位界限,从结点地址空间中“抢来”几位作为网络地址。具体来说,建立子网掩码需要以下两步:

1.  确定运行IP的网段数

例如网络上有五个网段,但只让三个网段上的用户访问Internet,则只有这三个网段需要配置IP。

2.  确定子网掩码

在确定了IP网段数后,再确定从结点地址空间中截取几位才能为每个网段创建一个子网络号。方法是计算这些位数的组合值。比如,取两位,有四种组合(00、01、10、11),取三位有八种组合(000、001、010、011、100、101、110、111)。需要注意的是,在这些组中须除去全0和全1的组合。因为在IP协议中规定了全0和全1的组合代表了网络地址和广播地址,所以如果我们需要将C类网络(192.168.123.0)划分为4个网段,需要截取结点地址的前3位作为网络地址,与之对应的子网掩码就是255.255.255.244(11111111.11111111. 11111111.11100000)。

可见,采用以上子网络方案,每个子网络有30个结点地址。通过从结点地址空间中截取几位作为网络地址的方法,可将网络划分为若干网段,方便了网络管理。

二、设计IP地址方案实例

在网络规划的过程中,绘制一幅准确的网络图是不可缺少的。准确的网络文档对于日后的升级和分析问题是不可或缺的帮助。好的网络图应包含连接不同网段的各种网络设备的信息,比如路由器、网桥、网关的位置、IP地址,并用相应的网络地址标注各网段。若网络很小,只有一个网段,可同时画出其它关键网络设备(如服务器),包括网络地址。如图所示这是一幅简单的网络图,其中五个网段经服务器互连(这里由服务器提供路由功能),一个用于主干网连接其它网段。

在设计IP地址方案之前,应考虑以下几个问题: 
1.  是否将网络连入Internet 
2.  是否将网络划分为若干网段以方便网络管理 
3.  是采用静态IP地址分配还是动态IP地址分配

如果不计划连到Internet上,则可用RFC1918中定义的非Internet连接的网络地址,称为“专用Internet地址分配”。RFC1918规定了不想连入Internet的IP地址分配指导原则。由Internet地址授权机构(IANA)控制IP地址分配方案中,留出了三类网络号,给不连到Internet上的专用网用,分别用于A,B和C类IP网,具体如下: 
10.0.0.0~10.255.255.255 
172.16.0.0~172.131.255.255 
192.168.0.0~192.168.255.255

IANA保证这些网络号不会分配给连到Internet上的任何网络,因此任何人都可以自由的选择这些网络地址作为自己的网络地址。表5是采用保留IP地址的网络地址分配方案。

如果计划将网络连入Internet,则需要向ISP申请一个网络地址。这里,我们假定得到了一个C类网络地址192.168.168.0。根据网络图所示,整个网络划分为5个网段,每个网段都使用IP,因此必须用至少能建5个子网的子网掩码。这里,我们采用的子网掩码是255.255.255.244。网络的IP地址分配方案如表6所示。

不难看出,采用子网掩码255.255.255.224将网络划分为5个网段后,每个网段可用的IP地址数为30个。如果某个网段的结点数超过了30个,可采用动态IP地址分配协议(DHCIP)加以解决。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/491463.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Android中Parcelable接口用法

Android中Parcelable接口用法 1. Parcelable接口 Interface for classes whose instances can be written to and restored from a Parcel。 Classes implementing the Parcelable interface must also have a static field called CREATOR, which is an object imp…

python获取当前文件路径

路径包含文件名: import sys print(sys.argv[0]) 输出/***/***/***.py 路径不包含文件名: 以下三种方式输出的结果一样 import os print(os.getcwd()) print(os.path.abspath(.)) print(os.path.abspath(os.curdir)) 输出/***/***/***

顶级专家谈中国脑科学研究最新成果

来源:环球时报大脑是人体最复杂的器官,人类对它的构造与运作机制充满好奇,但至今仍有大量难题需要破解。6月18日, 由中国科学院自动化研究所主办、自动化所脑网络组研究中心——中科搏锐团队承办的“中国科学院自动化研究所脑科学…

VMware虚拟机的三种联网方法及原理

VMware虚拟机的三种联网方法及原理 博客分类: 操作系统 虚拟机Vmware互联网网络应用网络协议 一、Brigde——桥接 :默认使用VMnet0 1、原理: Bridge 桥"就是一个主机,这个机器拥有两块网卡,分别处于两个局域…

[iOS]深度遍历view的subview

情景: cell中有textfield, 现在需要在tableview滚动是取消所有的textfield的第一响应, 一个个写比较麻烦, 写了一个递归方法, 用来遍历所有的子视图. -(void)allView:(UIView *)rootView {for (UIView *subView in [rootView subviews]){if (!rootView.subviews.count) {return…

量化人类社会交互行为

利用虚拟现实技术对人类社会交互行为进行定量化测量的过程 图片来源:蒯曙光团队来源: 中国科学报清早,小明走进教室,发现同学们正在聊天,老师敲黑板试图引起学生们的注意,李雷和韩梅梅明白了老师的意图&a…

如何在A用户下建立视图,这个视图是A的表与B的表进行关联的?

这个前提条件是,同一个数据库,不同用户!!!如果是不同数据库,就要用dblink了 一开始,我直接创建视图,但是提示“权限不足”; 于是我是用A登陆,直接用select * …

VMware14.1 Ubuntu16.04安装教程

1. 安装WMware14.1,安装成功后打开点击“主页”中的“创建新的虚拟机”。 2. 选择“自定义”,点击“下一步” 3. 选择默认选项,点击“下一步”。 4. 选择“稍后安装操作系统”,点击“下一步”。 5. 根据自己的实际情况进行选择&am…

python生成和导入pyc文件

生成pyc文件: import compileall compileall.compile_dir("/file_path") /file_path文件夹包含了所有要生成pyc格式的py文件 运行完后会在/file_path下生成一个__pycache__目录,存放所有生成的的pyc文件 导入pyc文件: 生成的p…

17个机器学习的常用算法!

来源:AI干货知识库根据数据类型的不同,对一个问题的建模有不同的方式。在机器学习或者人工智能领域,人们首先会考虑算法的学习方式。在机器学习领域,有几种主要的学习方式。将算法按照学习方式分类是一个不错的想法,这…

python获取依赖包和安装依赖包

获取依赖包: 第一种方法:获取环境中所有安装的包 打开命令提示符,在某条路径下输入pip freeze > ./requirements.txt 这时就会生成一个requirements.txt文件 第二种方法:根据某一个项目的import语句来生成依赖 打开命令提…

Firefox Developer Edition已阻止此网站安装未经验证的附加组件的解决办法

火狐浏览器添加博客园网摘,遇到这样一个问题:Firefox Developer Edition已阻止此网站安装未经验证的附加组件。 网上搜到的解决办法简明扼要,就这一句:about:config 中 xpinstall.signatures.required 设置为false. 我的补充&…

将联网方式更改为桥接模式

当前联网方式为NAT,当我们需要搭集群时需要我们将其改为桥接模式,下面将介绍如何更改连接方式。 1. 点击VMware上菜单栏里的虚拟机,点击“设置”,在弹出框内进行如下设置,点击“确定”。 2. 打开终端,输入…

有关军事人机混合智能的再再思考

来源: 人机与认知实验室【军事智能研究是一个领域,不是一个学科,我们必须要用不同的方法论,从不同的角度来研究游戏,方法论、角度越多,军事智能研究就会做得越好。】军事智能是一种涉及感性(尤其…

设置numpy的随机种子

np.random.random([])可以生成随机数矩阵,有时候我们想每次生成的随机数矩阵都一样,这时只需在前面加一句 np.random.seed(0)即可,如: np.random.seed(0) anp.random.random([2,2]) 当然,随机种子不一定为0&#xf…

查看Oracle有哪些表或者视图

转自:http://www.2cto.com/database/201211/167577.html1、查询当前用户下,有哪些表Sql代码 SELECT * FROM user_tables www.2cto.com 2、查询当前用户下, 可以访问哪些表 [也就是访问自己 和 其他用户的]Sql代码 SELECT * FROM all_tables 3、查询当前数据库所…

VMware14.1 Ubuntu16.04设置xshell连接虚拟机

1. 打开终端,查看本地ip地址 2. 安装ssh 3. 安装ssh成功后,打开本地xshell软件,创建新的会话。输入信息后点击“确定”,此处主机指的是虚拟机主机的ip,即刚刚用ifconfig命令查询到的IP地址。 4. 双击该会话连接&#x…

sklearn.decomposition.FastICA实现FastICA算法

关于sklearn.decomposition.FastICA的介绍http://lijiancheng0614.github.io/scikit-learn/modules/generated/sklearn.decomposition.FastICA.html import numpy as np import matplotlib.pyplot as plt from sklearn.decomposition import FastICAC 200 # 样本数 x np.ar…

四大运营商的5G部署路线一览

来源:数据观综合报道6月6日,工信部正式向中国移动、中国电信、中国联通和中国广电发放5G商用牌照。至此,中国成为继韩国、美国、瑞士、英国之后,全球第五个开通5G服务的国家。自2016年启动5G试验以来,短短两年时间&…

Ubuntu16.04安装JDK1.8

1. 首先将jdk文件拖拽到虚拟机桌面位置,使用VMware的可以安装高级工具Tools,这样可以实现文件的拖拽。如果没有Tools,也可以使用xftp软件进行文件传输,在此不做具体介绍。 2. 切换到文件所在目录,并将jdk文件移动到安…