应用层的理解

应用层

应用层和传输层的一个交互,应用层要把数据传给传输层,那么这个传的流程是什么?同理在另一台客户端或者服务器上,传输层也要向应用层提供服务,也就是向上传输。通过垂直服务,水平协议这个样式进行应用交互。

三个应用架构

C-S;P2P;混合体。三个架构,大致之前都说过。首先我们要进行交互,要知道对方的IP主机号吧,好的,知道主机好了,我们一个主机上有许多的进程,主机号都是一样的,为了进一步明确,我们还要告诉进程号吧,在这里进程号用端口号来表示进程。

C-S模式

C-S模式下,服务端的主机号和端口号都是固定不变的,客户端需要什么就写什么。

客户端需要信息的时候都是主动向服务端请求的,而自己的主机号什么的都是看用户的,端口号呢也是看用户使用什么进程的。

P2P

因为没有服务器,客户端就是服务器,所以服务端的ip和端口不固定。之前说P2P可扩展好之类的。在这里看来,因为要发送交互需要知道主机号端口号,而P2P模式请求的端口主机都不确定,不是很好管理。

混合模式

进程

通俗讲就是应用程序,相同主机的进程会通过操作系统定义的机制进行通信。比如登入wegame 使用qq登入 快速登入。个人举例哈。

而不同主机之间的通信就是通过报文 来通信 报文是专用名词,当作数据理解好了。

好了,知道大体通信了,需要解决的问题来了? 

1.目标地址和进程端口的问题。

2.应用层传输层的信息的传递。

3.传输层之下怎么通信。

 

 对于不同进程,都需要一个标识(这里我理解的就是端口号SAP,主机的ip就是32位的地址。

传输层的协议采用的是TCP或者UDP协议吧。  端口号和ip组成一个端节点。

有了信息后,会根据传输的协议进行一个发送,我方的信息,对方的信息。

socket

然后又会想一个问题,假如我的一个进程要传好多次文件,每次都要定义好目标ip,端口号,我方的ip和端口号是不是太麻烦了。然后就想利用一个东西去代替这个,或者说表示这些信息。这就引入socket 了。TCP和UDP的socket又不太相同,下面会说。然后socket是应用层给传输层中间的一个东西?具体我说不上来。

首先去理解socket,感觉就像老年机一个数字就能拨号,吧家人的手机号固定在长按数字1之中的感觉,就是为了方便和节省空间。就是在本地把要反复传输的东西用了个代号来指代 来减少信息

对应Tcp来说因为建立的是可靠的,面向连接的,所以他是要进行一个建立连接的过程,要让对方知道他是谁的,对方的反馈。所以在tcp的socket中有4个信息,本机ip 目标ip,本机端口号,目标端口号。

 

 如上图相同的进程与不一样的进程之间的socket的号码是不一样的。相同的通信,第一个进程和第二个进程通信在第一个socket是11111,而在第二个主机应用层和传输层的socket的是22222

UDP建立的是无连接的,我发出去就好了,也不会去建立连接,所以UDP中的socket只要包含本机ip和端口号,发送报文的时候写上对方的ip地址好了。写自己的是为了对方收到后(假如收到了)给我回复消息,这个不是建立连接哈,不是可靠的,有可能受不到消息的,而发送方也不会管的。

HTTP

有持久http和非持久http 

如果采用tcp协议的话,那么每次传输都是要进行建立连接的,如下图,这个传播时间是看距离的哈,对于请求来说,传输时延基本忽略,因为请求都是几个字节很小的,不向数据传输时延很久。然后可以发现建立连接使用很久的时间。那么假如我们建立了连接能一直存在,或者说不关闭这个连接后继续传东西,那这个还是不错的,这就是持久http

说明一点: tcp不维护报文的边界 进程的自己区分报文的边界,这个边界就是收到数据了,进程自己区分每段数据中的每一帧信息。收到的信息可能是010100,这类的,他自己去划分。

 Cookies

cookie 帮助http做状态的维护,第一次访问服务器,这个服务器就分配给他一个cookie 后续他来了 你就知道这个人来过,干嘛过

cookies是为了什么诞生的,是为了使Http从无状态变成有状态?这个我不知道哈

单词访问不会产生cookie 但是多次访问会知道你的一些信息 隐私。 能让服务端掌握线索。

缓存

其实计算机网络中可能也符合28定律,80%的人使用的是20%的信息,那么每次这个信息都从服务器上传是不是太没效率了。而且还可能出现流量强度为 1的情况造成信息堵塞。

缓存就是在某个客户端把内容缓存下来,后续其他客户端可以使用这个信息,而不用去服务端了,这么一说感觉向P2P。

 

 域名,

tsinghua.edu.cn,   cn是中国,edu是二级域名这样的意思在cn之下,tsinghua在edu之下

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值