热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

浅谈LTE--为什么EPC选择了sctp?

在epc中,e-node-b和mme之间的s1接口的传输层是使用的是sctp协议。这里就谈谈为什么选择sctp。我们先解释下为什么不用另外两个老朋友:UDP,TCP。1)不用udp的原因:

在epc中,e-node-b和mme之间的s1接口的传输层是使用的是sctp协议。这里就谈谈为什么选择sctp。我们先解释下为什么不用另外两个老朋友:UDP,TCP。

1)不用udp的原因:UDP没有任何质量保证的,会乱序和丢包。对于控制信令来说是不能接受的。丢了一个消息可能导致整个设备的状态错了,会带来无数意想不到的问题。为了保证消息的正确性。就必须在应用层增加保证机制,例如序列号,重传等等。这样增加了协议的复杂性,也增加了实现的复杂性。

2)不用TCP的原因:

    1)TCP传输的单位是数据流。它没有开头和结尾的标志。而信令是一个个有长度的消息。如果要用TCP传递消息,就必须添加消息的结束开始标志。这个无疑增加了实现的难度

    2)TCP的数据是保序的,如果前面的包丢了,后面的包即使收到了,也不能发给上层应用。必须等丢的包重传后,后面的包才能给上层应用。而服务器之间传递的一般是不同用户的消息。不同用户之间没有什么关联。不能够因为A用户的消息堵塞了,就影响b用户。解决的方案是为每个用户建立一个TCP的连接。可是这样就消耗比较多的资源。例如一个MME可能同时连接几十万个用户,几十万个TCP连接的开销是十分巨大的。


下面说下sctp的特点

1)以消息为单位。上层用起来跟方便
2)保序,不丢包,防止拥塞。这个也是tcp的优点。
3)可以在一个连接中建很多子流,彼此之间不影响。消耗的资源比较少。
4)多宿主。一个链路断了,可以走另外一路。这个是电信核心网的要求之一。
5)不容易被dos攻击。

当然sctp的问题也不少。
1)就是太复杂,tcp和udp很容易就学会。sctp中的概念实在太多,而这方面的资料也很少。不容易学。
2)支持太少。没有什么库。


推荐阅读
  • MQTT技术周报:硬件连接与协议解析
    本周开发笔记重点介绍了在新项目中使用MQTT协议进行硬件连接的技术细节,涵盖其特性、原理及实现步骤。 ... [详细]
  • UNP 第9章:主机名与地址转换
    本章探讨了用于在主机名和数值地址之间进行转换的函数,如gethostbyname和gethostbyaddr。此外,还介绍了getservbyname和getservbyport函数,用于在服务器名和端口号之间进行转换。 ... [详细]
  • 本文详细介绍如何使用Samba软件配置CIFS文件共享服务,涵盖安装、配置、权限管理及多用户挂载等关键步骤。通过具体示例和命令行操作,帮助读者快速搭建并优化Samba服务器。 ... [详细]
  • 随着网络安全威胁的不断演变,电子邮件系统成为攻击者频繁利用的目标。本文详细探讨了电子邮件系统中的常见漏洞及其潜在风险,并提供了专业的防护建议。 ... [详细]
  • 本文介绍如何在现有网络中部署基于Linux系统的透明防火墙(网桥模式),以实现灵活的时间段控制、流量限制等功能。通过详细的步骤和配置说明,确保内部网络的安全性和稳定性。 ... [详细]
  • 作者:守望者1028链接:https:www.nowcoder.comdiscuss55353来源:牛客网面试高频题:校招过程中参考过牛客诸位大佬的面经,但是具体哪一块是参考谁的我 ... [详细]
  • 深入解析TCP/IP五层协议
    本文详细介绍了TCP/IP五层协议模型,包括物理层、数据链路层、网络层、传输层和应用层。每层的功能及其相互关系将被逐一解释,帮助读者理解互联网通信的原理。此外,还特别讨论了UDP和TCP协议的特点以及三次握手、四次挥手的过程。 ... [详细]
  • NTP服务器配置详解:原理与工作模式
    本文深入探讨了网络时间协议(NTP)的工作原理及其多种工作模式,旨在帮助读者全面理解NTP的配置参数和应用场景。NTP是基于RFC 1305的时间同步标准,广泛应用于分布式系统中,确保设备间时钟的一致性。 ... [详细]
  • 访问一个网页的全过程
    准备:DHCPUDPIP和以太网启动主机,用一根以太网电缆连接到学校的以太网交换机,交换机又与学校的路由器相连.学校的这台路由器与一个ISP链接,此ISP(Intern ... [详细]
  • 本文深入探讨了MAC地址与IP地址绑定策略在网络安全中的应用及其潜在风险,同时提供了针对该策略的破解方法和相应的防御措施。 ... [详细]
  • NFS(Network File System)即网络文件系统,是一种分布式文件系统协议,主要用于Unix和类Unix系统之间的文件共享。本文详细介绍NFS的配置文件/etc/exports和相关服务配置,帮助读者理解如何在Linux环境中配置NFS客户端。 ... [详细]
  • 三菱PLC SLMP协议报文详解
    本文详细解析了三菱PLC中使用的SLMP协议报文结构,包括其工作原理、通信流程及报文格式,旨在帮助工程师和技术人员更好地理解和运用这一协议。 ... [详细]
  • 使用C# .NET构建UDP点对点聊天应用
    本文详细介绍如何利用C# .NET框架开发一个基于UDP协议的点对点聊天程序,包括客户端与服务器之间的连接建立、数据传输等核心功能。 ... [详细]
  • 本文将详细探讨 Linux 系统中的 netstat 命令,该命令用于查看网络状态和连接情况。通过了解 IP 地址和端口的基本概念,我们将更好地理解如何利用 netstat 命令来监控和管理网络服务。 ... [详细]
  • 本文详细介绍了 MySQL 的查询处理流程,包括从客户端连接到服务器、查询缓存检查、语句解析、查询优化及执行等步骤。同时,深入探讨了 MySQL 中的乐观锁机制及其在并发控制中的应用。 ... [详细]
author-avatar
mobiledu2502936967
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有