(一)网络linux
以下图:编程
(二)Tcp/Ip 简介服务器
首先咱们要引入一个概念叫作--协议:网络
什么是协议,就像世界上有不少种语言,而为了解决不一样种族⼈之间的语⾔沟通障碍,现规定国际通⽤语⾔是英语,这就是⼀个规定,这就是协议。工具
而不一样种类之间的计算机进⾏数据传递就像说不一样语⾔的⼈沟通⼀样,只要有⼀种⼤家都承认都遵照的协议便可, 那么这个计算机都遵照的⽹络通讯协议叫作 TCP/IP协议。学习
常⽤的⽹络协议以下图所示:spa
(三)端口操作系统
那么TCP/IP协议中的端⼝指的是什么呢?设计
端⼝就好⼀个房⼦的⻔,是出⼊这间房⼦的必经之路。code
以下图:
一台机器上的飞秋信息经过交换机发送到另外一台机器上,可是另外一台机器如何知道该他的飞秋进行接受呢?这里就要到端口。
若是⼀个进程须要收发⽹络数据,那么就须要有这样的端⼝;
在linux系统中,端⼝能够有65536(2的16次⽅)个之多! 既然有这么多,操做系统为了统⼀管理,因此进⾏了编号,这就是 端⼝号!
端⼝是经过端⼝号来标记的,端⼝号只有整数,范围是从0到65535
端口是如何分类的呢,这里简单介绍两种:
知名端⼝是众所周知的端⼝号,范围从0到1023
80端⼝分配给HTTP服务 21端⼝分配给FTP服务
能够理解为,⼀些常⽤的功能使⽤的号码是估计的,好⽐ 电话号码1十、 1008六、10010⼀样
动态端⼝的范围是从1024到65535;
之因此称为动态端⼝,是由于它⼀般不固定分配某种服务,⽽是动态分配。
动态分配是指当⼀个系统进程或应⽤程序进程须要⽹络通讯时,它向主机申 请⼀个端⼝,主机从可⽤的端⼝号中分配⼀个供它使⽤。 当这个进程关闭时,同时也就释放了所占⽤的端⼝号。
小结:
端口有什么⽤呢 ? 咱们知道,⼀台拥有IP地址的主机能够提供许多服务,⽐如HTTP(万维⽹服务)、FTP(⽂件传输)、SMTP(电⼦邮件)等,这些服务彻底能够经过1个IP地址来实现。那么,主机是怎样区分不一样的⽹络服务呢?显然不能只靠IP地址,由于IP地址与⽹络服务的关系是⼀对多的关系。 其实是经过“IP地址+端⼝号”来区分不一样的服务的。 须要注意的是,端⼝并非⼀⼀对应的。⽐如你的电脑做为客户机访问⼀台WWW服务器时, WWW服务器使⽤“80”端⼝与你的电脑通讯,但你的电脑则可能使⽤“3457”这样的端⼝。
(四)ip地址
试看以下的信息发送如何完成呢?
这时,咱们就须要知道张三的ip地址,而后经过网络发给他。
每⼀个IP地址包括两部分:⽹络地址和主机地址
A,B,C类ip地址前面的网络号能够想象成当前有多少个网络,然后面的主机号表示在当前某一个网络下有都少个主机。
A类IP地址 :
⼀个A类IP地址由 1字节的⽹络地址和3字节主机地址组成,
⽹络地址的最⾼ 位必须是“0”, 地址范围1.0.0.1-126.255.255.254
⼆进制表示为:00000001 00000000 00000000 00000001 - 01111110 11111111 11111111 11111110 可⽤的A类⽹络有126个,每一个⽹络能容纳1677214个主机。
B类IP地址:
⼀个B类IP地址由 2个字节的⽹络地址和2个字节的主机地址组成,
⽹络地址 的最⾼位必须是“10”, 地址范围128.1.0.1-191.255.255.254
⼆进制表示为:10000000 00000001 00000000 00000001 - 10111111 11111111 11111111 11111110 可⽤的B类⽹络有16384个,每一个⽹络能容纳65534主机。
C类IP地址:
⼀个C类IP地址由 3字节的⽹络地址和1字节的主机地址组成,
⽹络地址的最⾼位必须是“110” 范围192.0.1.1-223.255.255.254
⼆进制表示为: 11000000 00000000 00000001 00000001 - 11011111 11111111 11111110 11111110 C类⽹络可达2097152个,每一个⽹络能容纳254个主机
D类地址:⽤于多点⼴播
D类IP地址第⼀个字节以“1110”开始,它是⼀个专⻔保留的地址。
它并不指向特定的⽹络,⽬前这⼀类地址被⽤在多点⼴播(Multicast)中多点⼴播地址⽤来⼀次寻址⼀组计算机
地址范围224.0.0.1-239.255.255.254
E类IP地址 :
以“1111”开始,为未来使⽤保留 E类地址保留,仅做实验和开发⽤。
(五)子网掩码
要想理解什么是⼦⽹掩码,就不能不了解IP地址的构成。互联⽹是由许多⼩型⽹络构成的,每一个⽹络上都有许多主机,这样便构成了⼀个有层次的结构。IP地址在设计时就考虑到地址分配的层次特色,将每一个IP地址都分割成⽹络号和主机号两部分,以便于IP地址的寻址操做。
IP地址的⽹络号和主机号各是多少位呢?若是不指定,就不知道哪些位是⽹络号、哪些是主机号,这就须要经过⼦⽹掩码来实现。
⼦⽹掩码不能单独存在,它必须结合IP地址⼀起使⽤。
⼦⽹掩码只有⼀个做⽤,就是将某个IP地址划分红⽹络地址和主机地址两部分
⼦⽹掩码的设定必须遵循⼀定的规则:
与IP地址相同,⼦⽹掩码的⻓度也是32位, 左边是⽹络位,⽤⼆进制数字“1”表示; 右边是主机位,⽤⼆进制数字“0”表示。
接下来咱们举个例子:
假设IP地址为“192.168.1.1” 其⼦⽹掩码为“255.255.255.0”。
其中,根据前面所说的ip地址组成规则,咱们能够知道,该子网掩码前24为均为1;后八位均为0。
因此,前24位均为网络位,后8位均为主机位。
而该ip地址也就是前面的C类ip,二者匹配。
注意 :
若是将⼦⽹掩码设置过⼤,也就是说⼦⽹范围扩⼤,那么,根据⼦⽹寻径规则,极可能发往和本地主机不在同⼀⼦⽹内的⽬标主机的数据,会由于错误的判断⽽认为⽬标主机是在同⼀⼦⽹内,那么,数据包将在本⼦⽹内循环, 直到超时并抛弃,使数据不能正确到达⽬标主机,致使⽹络传输错误;
若是 将⼦⽹掩码设置得过⼩,那么就会将原本属于同⼀⼦⽹内的机器之间的通讯当作是跨⼦⽹传输,数据包都交给缺省⽹关处理,这样势必增长缺省⽹关的负担,形成⽹络效率降低。
所以,⼦⽹掩码应该根据⽹络的规模进⾏设置。若是⼀个⽹络的规模不超过254台电脑,采 ⽤“255.255.255.0”做为⼦⽹掩码就能够了,如今⼤多数局域⽹都不会超过这 个数字,所以“255.255.255.0”是最常⽤的IP地址⼦⽹掩码;假如在⼀所⼤学 具备1500多台电脑,这种规模的局域⽹可使⽤“255.255.0.0”。