当前位置: 首页 > news >正文

软件开发工具具有哪些基本功能网站信息组织优化

软件开发工具具有哪些基本功能,网站信息组织优化,郑州网站建设一汉狮网络,婚庆网站建设公司文章目录 一、网络层 1.IP协议 2.IP协议头格式 3.网段划分 4.特殊ip地址 5.IP地址的数量限制 6.私有ip和公网IP 7.路由 二、数据链路层 1.以太网 2.以太网帧格式 3.MAC地址 4.对比理解MAC地址和IP地址 5.MTU 6.ARP协议 ARP协议的工作流程 ARP数据报的格式 7.DNS 8.ICMP协议 9.N…

文章目录

一、网络层

1.IP协议

2.IP协议头格式

3.网段划分

4.特殊ip地址

5.IP地址的数量限制

6.私有ip和公网IP

7.路由

二、数据链路层

1.以太网

2.以太网帧格式

3.MAC地址

4.对比理解MAC地址和IP地址

5.MTU

6.ARP协议

ARP协议的工作流程

ARP数据报的格式

7.DNS

8.ICMP协议

9.NAT技术

NAPT

NAT和代理服务器


一、网络层

在复杂的网络环境中确定一个合适的路径

1.IP协议

主机配有ip地址,但是不进行路由控制的设备;路由器配有ip地址,又能进行路由控制;

节点:路由器和主机的统称

2.IP协议头格式

4位版本4位首部长度8位服务类型(TOS)16位总长度(字节数)
16位标识3位标志13位片偏移
8位生存时间(TTL)8位协议16位首部检验和
32位源ip地址
32位目的ip地址
选项(如果有)
数据
  • 4位版本号:指定的IP协议版本,对于IPV4来说,就是4

  • 4位头部长度:IP头部的长度是多少个32bit,也就是lenght*4的字节数,4bit表示最大的数字是15,因此ip头部最大长度是60字节

  • 8位服务类型:3位优先权字段(已经弃用),4位tos字段,和1位保留字段(必须置为0)4位tos分别表示:最小延时,最大吞吐量,最高可靠性,最小成本,这四者相互冲突,只能选择一个。对于ssh/telnet这样的应用程序,最小延时比较重要;对于ftp这样的程序,最大吞吐量比较重要

  • 16位总长度:ip数据包整体占多少字节

  • 16位标识:唯一标识主机发送的报文,如果ip报文在数据链路层被分片了,那么每一片里面的这个id都是相同的

  • 3位标志字段:第一位保留(保留的意思是暂时不用,将来可能会用到),第二位置为1表示禁止分片,这个给时候如果报文长度如果超过MTU,ip模块就会丢弃报文,第三位置表示更多分片,如果分片的话,最后一个分片置为1,其他是0,类似一个结束标记

  • 13位分片偏移:是分片相当于原始IP报文开始处的偏移,其实就是表示当前分片在原报文中处于哪个位置,实际偏移的字节数是这个值*8得到的,因此,除了最后一个报文,其他报文的长度必须是8的整数倍(否则报文就不连续了)

  • 8位生存时间(Time to live):数据报到达目的地最大的报文跳数,一般是64,每次经过一个路由

  • 8位生存时间(TTL):数据报到达目的地最大的报文跳数,一般是64,每次经过一个路由,ttl-1,一直-=0还没到达,那么就丢弃了,这个字段主要是用来防止出现路由循环。

  • 8位协议:表示上层协议的类型

  • 16位头部校验和:使用crc校验,来鉴别头部是否损坏。

  • 32位源地址和32位目标地址:表示 c和 s

3.网段划分

  • ip分为两个部分,网络号和主机号
  • 网络号:保证相互连接的两个网段具有不同的标识
  • 主机号:同一个网段内,主机之间具有相同的网络号,但是必须有不同的主机号。
  • 不同的子网就是把网络号相同的主机放在一起
  • 如果在子网中新增一台主机,则这台主机的网络号和这个子网的网络号一致,但是主机号必须不能和子网中的其他号重复。
  • 那么,如果手动管理子网内的IP,很费事。有一种技术为DHCP,能够自动给子网内新增主机节点分配IP地址,避免手动管理IP的不便。一般路由器都带有DHCP功能,因此路由器也可以看成一个DHCP服务器。
  • 曾经有一种方案将IP地址分为A B C D E五类,A类 0.0.0.0到127.255.255.255  B类 128.0.0.0到191.255.255.255  C类 192.0.0.0到223.255.255.255 D类 224.0.0.0到239.255.255.255 E类 240.0.0.0到247.255.255.255 大多数组织都申请B类,导致A类浪费了很多地址,针对这种情况,提出了CIDR方案
  • 引入一个额外的子网掩码来区分网络号和主机号
  • 子网掩码是一个32位整数,通常用一串0结尾
  • 将IP地址和子网掩码进行按位与操作,结果就是网络号
  • 网络号和主机号的划分与这个IP地址是A类、B类还是C类无关。

4.特殊ip地址

  • 将ip地址中的主机地址全部设置为0,就成了网络号,代表这个局域网
  • 将ip地址中的主机地址全部设为1,就成了广播地址,用于给同一个链路中相互连接的所有主机发送数据包
  • 127.*的IP地址用于本机环回测试,通常是127.0.0.1

5.IP地址的数量限制

IPV4是一个4字节的32位整数,那么2^32大概是43亿左右,tcp/ip规定每个主机都需要有一个ip地址。但是这样是不够的。实际上,除了一些特殊的IP地址,另外的IP地址并非是按照主机来配置的,而是每个网卡都需要配置一个或者多个IP地址。

CIRD在一定程度上缓解了IP地址不够用的问题,这个时候还有三种方式来解决

  • 动态分配IP地址:只给接入网络的设备分配IP地址,同一个MAC地址的设备,每次接入互联网得到的IP地址不一定是相同的
  • NAT技术(后续详细讲解)
  • IPV6用16字节128位来表示一个IP地址

6.私有ip和公网IP

如果一个组织内部组件局域网,IP地址只用于局域网内的通信,而不直接连接到INTERNET上,使用任意的IP地址都可以,但是RFC1918规定了用于组件局域网的私有IP地址

  • 10.*,前8位是网络号,共16777216个地址
  • 172.16.到172.31.,前12位是网络号,共1048576个地址
  • 192.168.*,前16位是网络号,共65536个地址
  • 包括在这个范围的,都称为私有IP,其余的称为公网IP
  • 一个路由器可以配置两个IP地址,一个是wan口ip,一个是lan口ip(子网)
  • 路由器的lan口连接的主机,都从属于当前这个路由器的子网中
  • 不同的路由器,子网IP其实都是一样的,子网内的主机ip地址不能重复,但是子网之间的ip地址就可以复用了
  • 每一个家用的路由器,其实又作为运营商路由器的子网中的一个节点,这样的运营商路由器可能有很多级,最外层的运营商路由器,wan口ip就是一个公网ip
  • 子网内的主机和外网通信时,服务器将ip首部的地址进行替换,替换称wan口ip,这样逐级替换,最终数据包中的IP地址称为一个公网ip,这种技术位NAT技术
  • 如果希望我们自己实现的服务器程序,能够在公网上被访问到,就需要把程序部署在一台具有外网IP的服务器上。

7.路由

路由就是在复杂的网络结构中,找出一条通往终点的路线。

就比如唐僧要去西天取经,一路上到一个节点,继续问下一个节点怎么走。路由的过程就是这样一跳一跳的。所谓的“一跳”就是数据链路层的一个区间,具体在以太网中指的源MAC地址到目的MAC地址之间的帧传输区间。

IP数据包的传输过程也和问路一样

当ip数据包,到达路由器时,路由器会先查看目的IP

路由器决定着这个数据包是能直接发送给目标主机,还是需要发送给下一个路由器。

以此反复,直到到达目标ip地址。

那么如何判定这个数据包应该发送到哪里--->这个就依靠每个节点内部维护一个路由表

路由表可以使用route命令查看

如果目的ip命中了路由表,就直接转发即可。

路由表中的最后一行,主要由下一跳地址和发送接口两部分组成,当目的地址与路由表中其他行都不匹配的时候,就按缺省路由条目规定的接口发送到下一跳地址。

假设某主机上的网络接口配置和路由表如下:

这台主机有两个网络接口,一个连接到192.168.10.0/24这个网络,另一个连接到192.168.56.0/24这个网络

路由表的destination是目的网络地址,GENMASK是子网掩码,gateway是下一跳地址,iface是发送连接口,flags中的u表示此条目有效,g表示此条目的下一跳地址是某个路由器地址,没有g标识的标识目的网络地址是与本机接口直接相连的网络,不必经过路由器转发。

二、数据链路层

用于两个设备(同一个数据链路节点)之间进行传递。

1.以太网

以太网不是一种具体的网络,而是一种技术标准。既包含了数据链路层,也包含了一些物理层的。例如:规定了网络拓扑结构,访问控制方式,传输速率等。例如以太网中的网线必须通过双绞线,传输速率有10M,100M,1000M等。以太网是当前最广泛的局域网技术,还有令牌环网,无线lan等。

2.以太网帧格式

目的地址源地址类型数据crc

源地址和目的地址是指网卡的硬件地址(也叫MAC地址),长度是48位,在网卡出厂时固化。

帧协议类型资源有3中:ip,arp,rarp

帧末尾是CRC校验

3.MAC地址

MAC地址是用来识别数据链路层中相连的节点

长度为48位,即6个字节,一般用16进制数字加上冒号的形式标识(例如:08:00:27:03:fb:19)

在网卡出厂时就确定了,不能被修改,mac地址通常是唯一的(虚拟机中的mac地址不是真实的mac地址,可能会冲突,也有些网卡支持用户配置mac地址)

4.对比理解MAC地址和IP地址

IP地址是路途总体的起点和终点

MAC地址描述的是路途上每一个区间的起点和终点

5.MTU

MTU相当于发快递对包裹尺寸的限制,这个限制是不同的数据链路层对应的物理层产生的限制。

  • 以太网帧中的数据长度规定最小46字节,最大1500字节,ARP数据包的长度不够46字节,要在后面补充
  • 最大值1500称为以太网传输的最大传输单元MTU,不同的网络类型有不同的MTU
  • 如果一个数据包从以太网路由到拨号链路上,数据包长度大于拨号链路MTU了,则需要对数据包进行分片
  • 不同数据链路层标准的MTU不同

6.ARP协议

ARP协议建立了主机IP地址和MAC地址的映射关系

  • 在网络通讯时,源主机的应用程序知道目的主机的IP地址和端口号,却不知道目的主机的硬件地址
  • 数据包首先是被网卡接收到,再去处理上层协议的,如果接收到的数据包的硬件地址与本机不符,则直接丢弃
  • 在通信之前,必须先获得目的主机的硬件地址

ARP协议的工作流程

①主机A的IP地址172.20.1.1,它希望与172.20.1.2进行通信

②发送ARP请求包,目标IP地址知道,但是MAC地址不知道

③主机B告诉A它的MAC地址:08:00:20:74:CE:EC

④主机B发送ARP响应包,172.20.1.2的mac地址为08:00:20:74:CE:EC

  • 源主机发出arp请求,询问IP地址是172.20.1.2的主机的硬件地址是多少.并将这个请求广播道本地网段(以太帧首部硬件地址填FF:FF:FF:FF:FF:FF表示广播);
  • 目的主机接收道广播的ARP请求,发现其中的ip地址与本机相符,则发送一个arp应答数据包给源主机,将自己的硬件地址填写在应答包中
  • 每台主机都维护一个ARP缓存表,可以用arp-a命令查看。缓存表中的表象有过期时间,如果这个时间内没有再次使用某个表项,则该表项失效,下次还要发送ARP请求来获得目的主机的硬件地址。

ARP数据报的格式

  • 注意到源MAC地址、目的MAC地址在以太网首部和ARP请求中各出现一次,对于链路层为以太网的情况是多余的,但是如果链路层是其他类型的网络则有可能是必要的。

  • 硬件类型是指链路层的网络类型,1为以太网

  • 协议类型是指要转换的地址类型,0x0800为IP地址

  • 硬件地址长度对于以太网地址为6字节

  • 协议地址长度对于和ip地址为4字节

  • op字段为1表示ARP请求,op字段为2表示ARP应答

7.DNS

DNS是一整套从域名映射道IP的系统。tcp/ip中使用ip地址和端口号来确定网络上一台主机的一个程序,但是IP地址不方便记忆,所以人们发明一个称为主机的字符串,并且使用hosts文件来描述主机和ip地址的关系。

用户可以输入 host -a来查看ip地址。最初通过互联网信息中心来管理这个hosts文件的,如果一个新的计算机要接入网络,或者某个计算机ip变更,都需要到信息中心申请变更hosts文件,其他计算机也需要定期下载更新新版本的Host文件才能正确上网。这样就太麻烦了,产生了dns系统

dns系统

  • 一个组织的系统管理机构,维护系统内的每个主机的IP和主机名的对应关系
  • 如果新计算机接入网络,将这个信息注册到数据库中
  • 用户输入域名的时候,会自动查询DNS服务器,由DNS服务器检索数据库,得到对应的IP地址
  • 至今计算机上仍保留了hosts文件,在域名解析的过程中仍然会优先查找hosts文件的内容 cat /etc/hosts

8.ICMP协议

ICMP是一个网络层协议 一个新搭建好的网络 需要进行一个简单的测试,来验证网络是否畅通;但是ip协议并不提供可靠传输,如果丢包了,IP协议并不能通知传输层是否丢包以及丢包的原因

ICMP正是提供这种功能的协议;ICMP主要功能包括:

  • 确认IP是否成功到达目标地址
  • 通知在发送过程中IP被丢弃的原因
  • ICMP也是基于IP协议工作的,但是它并不是传输层的功能,因此它仍旧是网络层协议
  • ICMP只能搭配IPV4使用,如果是IPV6的情况下,需要用ICMPV6

ICMP主要分为两类报文:一类是通知出错原因 一类用于诊断查询

PING命令:

  • PING的是域名,而不是url,一个域名可以通过DNS解析成IP地址
  • ping命令不光能验证网络的连通性,同时也会统计响应时间和ttl
  • ping命令对先发送一个icmp echo request给对端
  • 对端收到之后,会返回一个icmp echo reply

有的面试官会问,telnet是23端口,ssh是22端口,那么ping对应哪个端口?

ping命令是基于ICMP,是网络层,而端口号是传输层的内容,在ICMP中不关注端口号这样的信息

traceroute命令 也是就与ICMP协议实现 能够打印出可执行程序主机一直到目标主机之前经历多少路由器

9.NAT技术

之前讨论了IPV4中,IP地址数量不足的问题,NAT技术当前解决IP地址不够用的主要手段,是路由器的一个重要功能

  • NAT能够将私有IP对外通信时转为全局IP,也就是一种将私有IP和全局IP相互转化的技术方法
  • 很多学校,家庭,公司内部每个终端设置私有IP,而在路由器上或者必要的服务器设置为全局ip
  • 全局IP要求唯一,但是私有IP不需要,在不同的局域网中出现相同的私有IP是不影响的。

  • NAT路由器将源地址从10.0.0.10替换成全局的IP 202.244.174.37
  • NAT路由器收到外部的数据时,又会把目标IP从202.244.174.37替换回10.0.0.10
  • 在NAT路由器内部,有一张自动生成的,用于地址转换的表
  • 当10.0.0.10第一次向163.221.120.9发送数据就会生成表中的映射关系

NAPT

那么问题来了 如果局域网内 有多个主机都访问同一个外网服务器 那么对服务器返回的数据中 目的IP都是相同的 那么NAT路由器如何判定将这个数据包转发给哪个局域网的主机 NAPT就来解决这个问题了 使用IP+PORT来建立这个关系

这个关系也是NAT路由器自动维护的 在TCP的情况下,建立连接时,就会生成这个表项 在断开连接后 就会删除这个表项

NAT具有很多技术缺陷 无法从NAT外部向NAT内部建立连接 转换表中的生成和销毁都需要额外开销 通信过程中一旦NAT设备异常 即使存在设备 所有的TCP连接都会断开

NAT和代理服务器

路由器一般都具备NAT设备的功能,通过NAT设备进行中转,完成子网设备和其他设备的通信过程

代理服务器看起来和NAT设备有一点像,客户端向代理服务器发起请求,代理服务器将请求转发给真正要请求的服务器,服务器返回结果后,代理服务器又把结果回传给客户端

  • 从应用上讲,NAT设备是网络基础设备之一,解决的是IP不足的问题,代理服务器更贴近具体应用,比如通过代理服务器进行翻墙,加速器等等
  • 从底层上讲,NAT是工作在网络层,直接对IP地址进行替换,代理服务器往往工作在应用层
  • 从使用范围上讲,NAT一般在局域网的出口部署,代理服务器可以在局域网上,也可以在广域网上,也可以跨网。
  • 从部署位置上看,NAT一般集成在防火墙,路由器等硬件设备上,代理服务器则是一个软件程序,需要部署在服务器上

代理服务器是一种应用比较广的技术

  • 翻墙:广域网中的代理
  • 负载均衡:局域网中的代理

代理服务器又分为正向代理和反向代理,反向代理一般作为一个缓存,正向代理用于请求的转发。

花王尿不湿是一个很经典的尿不湿品牌, 产自日本. 我自己去日本买尿不湿比较不方便, 但是可以让我在日本工作的表姐去超市买了快递给我. 此时超市看到的买家是我表姐, 我的表姐就是 "正向代理";

后来找我表姐买尿不湿的人太多了, 我表姐觉得天天去超市太麻烦, 干脆去超市买了一大批尿不湿屯在家里, 如果有人 来找她代购, 就直接把屯在家里的货发出去, 而不必再去超市. 此时我表姐就是 "反向代理


http://www.yidumall.com/news/16106.html

相关文章:

  • 做音乐网站用什么程序seo搜索优化 指数
  • 聊城网站建设设计实力公司想要网站推广版
  • wordpress首页小工具google搜索优化
  • 合肥营销网站建设设计360搜索引擎入口
  • 刚刚地震最新消息今天2021优化教程
  • 移动网站建设初学视频教程中国网站排名查询
  • 大连金豆网站建设大数据培训包就业靠谱吗
  • 海南网站建设粤icp备成都百度推广电话
  • 哪个网站不花钱可以做招聘短视频seo营销
  • 广东在线网站建设百度最新财报
  • 网页html代码seo推广排名重要吗
  • 删除wordpress首页链接seo排名影响因素主要有
  • 死链接对网站的影响sem是什么
  • 网页设计旅游网站前言数字营销工具
  • 入侵织梦网站后台免费发广告帖子的网站
  • 商城网站做推广方案沈阳线上教学
  • 西安市城乡房地产建设管理局网站一级消防工程师考试
  • 百度推广送的公司网站有什么用seo网站自动推广
  • 一家专门做男人的网站seo百度关键词优化软件
  • 企业网站开发项目策划书基本框架新手做seo怎么做
  • 做舞台灯光的在哪些网站接订单呢网站运营包括哪些内容
  • 微信公众号网站怎么做广告设计与制作需要学什么
  • vs做网站怎么上设计素材网站
  • 网站改版提示无需改版企业网站的优化建议
  • 学网站设计和平面设计北京网站seo优化推广
  • 招聘网站开发的公司广州seo工程师
  • 做公司网站找谁专业黑帽seo推广
  • wordpress站点app开发百度图片识别在线识图
  • 支付网站建设百度推广网站一年多少钱
  • 南充能够建设网站的公司有百度新闻首页头条