首页 > 其他分享 >计算机网络(Ⅵ)应用层原理

计算机网络(Ⅵ)应用层原理

时间:2024-10-30 12:19:42浏览次数:7  
标签:UDP 服务 IP 报文 计算机网络 服务器 进程 原理 应用层

一些网络应用的例子:

E-mail         Internaet电话

Web            电子支付

文本信息      搜索

P2P文件共享 流媒体

即时通讯      实时电视会议

.... ....

 

创建一个网络应用:

1.编程

2.在不同的端系统上运行。

网络应用的体系架构

可能的应用架构

1.客户-服务器模式(C/S:client/server)

2.对等模式(P2P:Peer To Peer)

2.混合体:客户-服务器模式+对等体系结构

C/S模式

服务器

1.一直在运行

2.固定的IP和周知的端口号

3.扩展性:服务器场

数据中心进行扩展

扩展性差

客户端

1.主动与服务器通讯

2.与互联网有间歇性连接

3.可能是动态的IP地址

4.不直接与其他客户端通信

注意:C/S模式随着用户数量的增加,性能断崖式下降!!!!(原因:以服务器为核心,服务器压力变大)

P2P模式

1.(几乎)没有一直运行的服务器

2.任意系统之间可以进行通信

3.每一个节点既是客户端,又是服务器

自扩展性-新peer节点带来新的服务能力,当然也带来新的服务需求

4.参与的主机间接性连接且可以改变IP地址

难以管理

混合体

 

进程通信

进程:在主机上运行的应用程序

1.在同一个主机内,使用进程间通信机制通信

2.不同主机,通过交换报文(Message)来通讯

        使用OS提供的通信服务

        按照应用同协议交换报文

        借助传输层提供的服务

注意:P2P架构的应用也有客户端进程和服务器进程之分

客户端进程:发起通讯的进程

服务器进程:等待连接的进程

 分布式进程的通讯需要解决的问题

 1.进程的标示和寻址问题(服务用户)

 

2.传输层-应用层提供服务是如何(服务)

位置:层间界面的SAP(TCP/IP:socket)
形式:应用程序接口API(TCP/IP:socket API)

 

 

 注:SDU(service data unit)服务数据单元。

3.如何使用传输层提供的服务,实现应用进程之间的报文交换,实现应用(用户使用服务)

定义应用层协议:报文格式,解释,时序等
编制程序,使用OS提供的API。调用网络基础设施提供通信服务传报文,实现应用时序等。

TCP之上的套字编程

对于使用面向连接服务(TCP)的应用而言,套接字是4元组的一个具有本地意义的标识。

        4元组:(源IP,源port,目标IP,目标port)

        唯一的指定了一个会话(2个进程之间的会话关系)

        应用使用这个标示,与远程的应用进程通信

        就像使用操作系统打开一个文件,OS返回一个文件句柄一样,以后使用这个文件句柄,而不是使用这个文件的目录名,文件名

        简单,便于管理

UDP之上的套字编程

UDP服务,两个进程之间的通讯之前无需建立连接

        每一个报文都是独立传输的

        前后报文可能给不同的分布式进程

因此,只能用一个整数表示本应用实体的表示

        因为这个报文可能传给另外一个分布式进程

穿过层间接口的信息大小最小

UDP socket:本IP,本端口

但是传输报文时:必须呀提供对方IP,port

        接收报文时:传输层需要上传对方的IP,port

对于使用无连接服务(UDP)的应用而言,套接字是二元组的一个具有本地意义的标示

2元组:IP,port(源端指定)

UDP套接字制定了应用所在的一个端节点(end point)

在发送数据报时,采用创建好的本地套接字(标示ID),就不必在发送每个报文中指明自己的ip和port

但是在发送报文时,必须要指定对方的ip和udp port(另外一个端节点)

Internet传输层提供的服务

TCP服务

可靠的通信服务

流量控制:发送放不会淹没接收方

拥塞控制:当网络出现拥塞时,能够抑制发送方

不能提供的服务:时间保证,最小吞吐量和安全

面向连接:要求客户端进程和服务器之间建立连接

UDP服务

不可靠数据传输

不提供的服务:可靠,流量控制,拥塞控制,时间,带宽保证,建立连接

UDP存在的理由

UDP通过增加端口号,实现进程到进程之间的连接

安全TCP

标签:UDP,服务,IP,报文,计算机网络,服务器,进程,原理,应用层
From: https://blog.csdn.net/xiawubushangban/article/details/143361373

相关文章

  • XCVU13P板卡设计原理图:509-基于XCVU13P的4路QSFP28光纤PCIeX16收发卡
    基于XCVU13P的4路QSFP28光纤PCIeX16收发卡 一、板卡概述     基于XCVU13P的4路QSFP28光纤PCIeX16收发卡。该板卡要求符合PCIe3.0标准,包含一片XCVU13P-2FLGA2014I、4组64-bit/8GBDDR4;4路QSFP284X光纤,每路光纤支持4X25Gbps,双向;支持32路IO。板卡工作温度范围0到60℃,板......
  • 计算机网络 第三章: 共享式以太网_网络适配器和MAC地址
    文章目录网络适配器MAC地址概述IEEE802局域网的MAC地址格式IEEE802局域网的MAC地址发送顺序以太网(Ethernet)以曾经被假想的电磁波传播介质——以太(Ether)来命名。以太网最初采用无源电缆(不包含电源线)作为共享总线来传输帧,属于基带总线局域网,传输速率为2.94Mb/s。......
  • openssl enc内部算法实现原理
    我们都知道使用命令openssl时可以使用-enc指定算法,那么具体它的实现原理是什么呢?我们通过实验来一探究竟我们新建一个my.txt里面的内容为12345678opensslenc-aes-128-cbc-inmy.txt-outmy.enc-k"mypasswd"结果会生成my.enc文件,我们用xxd命令可以看到那么这个文件是如......
  • 第二届计算机网络技术与电子信息工程国际学术会议(CNTEIE 2024) 2024 2nd Internationa
    @目录一、会议详情二、重要信息三、大会介绍四、出席嘉宾五、征稿主题一、会议详情二、重要信息大会官网:https://ais.cn/u/vEbMBz提交检索:EICompendex、IEEEXplore、Scopus三、大会介绍第二届计算机网络技术与电子信息工程国际学术会议(CNTEIE2024)将于2024年12月6-8日......
  • 强化学习的数学原理-07时序差分方法
    目录引入TDlearingofstatevaluesTDlearingofactionvaluesSarsaTDlearingofactionvaluesExpectedSarsaTDlearingofactionvaluesn-stepSarsaTDlearingofoptimalactionvalues:Q-learningaunifiedpointofview引入这三个例子是层层递进的,都可以用\(R......
  • GraphRAG原理及部署实战(GraphRAG系列第一篇)
        RAG在大模型时代,被寄予了厚望,但在近一年多各大小公司的实施过程中,其效果远没有抖音中宣传的那么振奋人心,其原因是多方面的。这篇文章就RAG中的一个弱项--局部性来展开讨论。一、RAG原理       图1描述了RAG的原理,用户输入了一个指令Instruct,RAG将其与Docu......
  • DRAM的工作原理详解
    DRAM(DynamicRandomAccessMemory,动态随机存储器)是一种常用的半导体存储器类型,具有高密度、低成本和快速访问等特点。它用于计算机内存中,以存储数据和指令。了解DRAM的工作原理可以帮助我们理解它如何处理读写数据。DRAM基本结构DRAM是基于电容器和晶体管结构的。每个DRAM存......
  • 活性炭吸附处理有害气体原理
    (一)概述吸附现象是发生在两个不同相界面的现象,吸附过程就是在界面上的扩散过程。吸附可分为物理吸附和化学吸附,其不同特点列于表10-33。   在吸附现象中的固相称为吸附剂,被吸附的物质称为吸附质用吸附法可以除去的污染物质,列于表10-34。  从表10-34可知,活性炭......
  • 强化学习的数学原理-06随即近似理论和随机梯度下降
    目录Robbins-MonroalgorithmStochasticgradientdescentBGD、MBGD、andSGDSummaryRobbins-Monroalgorithm迭代式求平均数的算法\(Stochastic\;approximation\;(SA)\):是指随机迭代的一类算法,进行求解方程或者优化的问题,\(SA\)的优势是不需要知道方程或目标函数的表达......
  • RabbitMQ的原理和集成使用
    RabbitMQ是一个消息代理系统,支持多种消息传递协议,主要用于解耦和异步处理。作为AMQP(AdvancedMessageQueuingProtocol)协议的实现,它在现代分布式系统中有广泛应用,尤其在微服务架构中。以下是RabbitMQ的原理、组件、消息模型、应用场景和SpringBoot集成方法。一、R......