仿拉手团购App7--个人中心界面

Posted 安卓笔记侠

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了仿拉手团购App7--个人中心界面相关的知识,希望对你有一定的参考价值。

一、网络层提供的服务

 

 
1

说明:网络层负责在不同网络之间转发数据包,基于数据包的IP地址转发。至于多个数据包在接收端的顺序、是否丢包(不负责重传)这些都不是网络层的任务,而是传输层的任务了。

 

二、网络层如何发送数据

  • 应用程序准备要传输的文件
  • 传输层将文件分段并且编号
  • 网络层田间目标IP地址和源IP地址
  • 数据链路层一般有两种情况,一种是使用自己的子网掩码,判断自己在哪个网段和目标地址在哪个网段。如果在同一个网段,则直接使用ARP广播解析目标IP地址的MAC地址,然后直接传输。如果不是在同一个网段,则首先要询问网关的MAC地址,将数据先传递给路由器,路由器根据目标IP地址将数据发送目的主机。对于数据,在传输层叫段,在网络层叫包,在链路层叫帧。
     
    2

    说明:从上图中我们可以清晰的看到数据是如何传送的,同时也可以看到各类设备工作在哪一层。

三、网络层协议

3.1 ARP协议

IP地址通过广播目标MAC地址是FF-FF-FF-FF-FF-FF来解析目标IP地址的MAC地址。只能在本网络,不能跨网络。也就是只能扫描本网络的MAC地址。使用命令arp -a可以查看某时刻的网络MAC地址。

3.1.1 ARP欺骗

比如现在同一个网络中有三台计算机P1、P2、P3,其物理地址分别是M1、M2、M3,此时P1要向P2发送数据,于是使用ARP协议广播,首先P2将自己的物理地址高速了P1,于是这个地址M2就存储在了P1上,但是此时P3通过黑客软件伪装成P2告诉P1物理地址为M3,于是之后所有数据都发送给P3,当然P3为了不被发现,可以将数据再次转发给P2。这就是ARP欺骗。我们可以使用命令arp -s 192.168.88.100 00-0c-29-53-48-c4修改某个IP地址的MAC地址,此时本计算机就缓存了这个MAC地址,而且是静态的,因为是管理员告诉的。如果要清除缓存的物理地址可以点本地连接,点击修复即可。以上我们可以知道,ARP协议是用来将IP地址解析为MAC地址,而IP地址用来将数据从一个网段转发到另一个网段

3.2 网际控制报文协议ICMP

此协议用来检测网络是否通畅,比如我们使用ping命令测试网络就是使用的此协议。在使用此命令的时候我们可以查看延时,同时关注一个信息,就是TTLTTL表示数据包的生存周期,一般来说Linux64Windows128Unix255,然后数据在传输的过程中每经过一个路由器则TTL减一,通过这个值我们可以大概判断所ping计算机的系统,如果TTL减为零则数据不再传输,直接被丢弃。如果给ping命令加上-t,则表示让此命令一直进行下去。Windowspathping命令能跟踪数据包路径,计算丢包情况。

3.3 Internet组播管理协议IGMP

  • 组播(多播)
    通过一个组播地址让一组计算机来进行接收,而不是向广播那样,所有的计算机都能接收到。
  • IGMP协议
    就是配置在一个组的路由器上面的,如果这个组都不需要接收数据了,那么配置了此协议的路由器就会知道发送端不需要发送数据了。

四、抓包分析数据

4.1 IP数据报结构

一个IP数据报由首部和数据两部分组成

  • 首部的前一部分是固定长度,供20字节,是所有IP数据报必须有的
  • 在首部的固定部分的后面是一些可选字段,其长度是可变的
     
    3

     
    4

    说明:版本用来标识TCP/IP协议的版本。区分服务是指,在传输信息的过程中,有些信息可能要求实时性,但是有些却没有这样的要求,于是对于这两种信息我们可以对其做上标记,同时也高速路由器优先传输哪种信息,这就是区分服务。总长度即数据报或分片之后数据报的长度。而前面讲到数据链路层的数据最大是1500字节(最大传输单元MTU),而这里的数据报却最大是2^16-1个字节,这里就会产生冲突,这里使用分片将网络层数据报分成小的片,然后由链路层传输,一般情况下是不需要分片的。分片实例如下图6
     
    5

     
    6

    而这里的标识是指,当一个数据报分片之后如何在接收端进行组装,那时就需要使用这个标识。标志表示数据报是否进行了分片,标志站3位,目前只有前两位有意义。标志字段的最低位是MF(More Fragment)MF=1表示后面“还有分片”;MF=0表示最后一个分片。标志字段中间的一位是DF(Don\'t Fragment)。只有当DF=0时才允许分片。片偏移表示在分片之后, 某一个数据报在整个数据报中的分片位置的偏移是多少。生存时间TTL) 即数据报的生存时间,可以防止路由中的环路导致数据不能送达目的地。协议是指数据使用的是什么协议,是TCP还是UDP还是其他。
     
    7

    其中各协议对应的协议号为,ICMP:1、IGMP:2、TCP:6、UDP:17、IPv6:41、OSPF:89首部检验和(16位)用于检验数据报是否被修改或者出错,首部检验和字段只检验数据报的首部,不检验数据部分,这里不采用CRC检验码而采用简单的计算方法。
     
    8

    可选字段一般没有,用于支持排错测量等,在IPv6中已被取消了。我们可以使用抓包工具进行查看,同时还可以使用抓包工具来排查网络故障。

五、IP协议

网络层的职责就是在路由器之间转发数据,不负责数据的是否出错等问题。而路由器是如何判断数据应该从哪个口转发出去呢?是如何选择路径的?这是通过路由表来进行选择的,路由表一种是由管理员告知的这一段数据应该怎么走,这就是静态路由;另一种是好几个路由器通过某种协议(RIP等)相互学习到某个网段该怎么走,在传输的时候自己选择走哪条路径传输,这就是动态路由。这里所述的IP协议是一个统称,即所有能让路由器学习到路由表的协议统称为IP协议。

5.1 网络畅通的条件

 

 
9

说明:网络畅通的条件就是数据报在发送的过程中有去有回,即传输路径中的每个路由器都知道其要传递的下一个路由器地址,并且也知道数据反向回来时的目的路由器地址。所以计算机和路由器必须配置网关,同一个局域网中通信是不需要网关的。

 

5.2 静态路由

在使用静态路由时,需要管理员高速所有路由器所有没有直连的网络下一跳(下一个传输结点)给哪个路由器。这里注意:如果是如上图那样的网络我们可以手动设置一些静态路由即可,但是如果网络较为复杂,都手动设置会特别麻烦,而且容易出错,此时就需要使用动态路由了。静态路由适合于小规模网络,不能够自动调整路由。

5.3 动态路由

 

 
10

说明:

 

  • RIP:周期性的广播路由表,使得网络中的其他路由器知道此路由器连接的线路。同时自己判断转发次数最少的路径为最佳路径,一般30秒更新一次路由信息。最大转发次数为15次,如果有16个及以上的路由器则仍未不可到达,不适合网络规模较大的情况。

  • OSPF:此协议选择最佳路径的方式不是以转发多少次为标准,而是以带宽为标准,哪个路径的带宽大就选择哪条路径转发,这样会更快。



以上是关于仿拉手团购App7--个人中心界面的主要内容,如果未能解决你的问题,请参考以下文章

仿拉手团购App5--登录界面

仿拉手团购App9-- 产品详情界面

仿拉手团购App5--登录界面2

仿拉手团购App1--首页

仿拉手团购App2--当前城市选择Activity

android个人中心页面的设计