DIAMETER基础协议

AAA 服务器 — Diameter(直径)协议 目录 文章目录目录Diameter 协议簇Diameter 实现的组成部分Diameter 协议簇的基本协议Diameter 协议簇的应用协议freeDiameter 开源实现 Diameter 协议簇 Diameter(直径)协议,意味是 RADIUS(半径)的改进或者替代,由 IETF 开发,被 AAA 工作组定位为下一代的 3A 协议标准。 Diameter 协议不是一个单一的协议,而是一个协议簇,它包括了基本协议(Diameter Base Protocol)和各种由基本协议扩展而来的应用协议,如: 阅读详情

Diameter协议族包括基础协议(Diameter Base Protocol)和各种应用协议。本文介绍的基础协议提供了作为一个AAA协议的最低需求,是Diameter网络节点都必须实现的功能,包括节点间能力的协商、Diameter消息的接收及转发、计费信息的实时传输等。应用协议则充分利用基础协议提供的消息传送机制,规范相关节点的功能以及其特有的消息内容,来实现应用业务的AAA。基础协议可以作为一个计费协议单独使用,但一般情况下需与某个应用一起使用。

 

图1是Diameter的协议层次图。

Diameter网络节点

在Diameter协议中,包括多种类型的Diameter节点。除了Diameter客户端和Diameter服务器外,还有Diameter中继、Diameter代理、Diameter重定向器和Diameter协议转换器。

● Diameter中继 能够从Diameter请求消息中提取信息,再根据Diameter基于域的路由表的内容决定消息发送的下一跳Diameter节点。Diameter中继只对过往消息进行路由信息的修改,而不改动消息中的其他内容。

● Diameter代理 根据Diameter路由表的内容决定消息发送的下一跳Diameter节点。此外,Diameter代理能够修改消息中的相应内容。

● Diameter重定向器 不对消息进行应用层的处理,它统一处理Diameter消息的路由配置。当一个Diameter节点按照配置将一个不知道如何路由的请求消息发给Diameter重定向器时,重定向器将根据其详尽的路由配置信息,把路由指示信息加入到请求消息的响应里,从而明确地通知该Diameter节点的下一跳Diameter节点。

● Diameter协议转换器 主要用于实现RADIUS与Diameter,或者TACACS+与Diameter之间的协议转换。

上述各种Diameter节点,通过配置建立一对一的网络连接,组成一个Diameter网络。

Diameter网络节点间的对等连接

Diameter节点间的网络连接是在Diameter节点启动过程中动态建立的基于TCP或者SCTP传输协议上的套接字连接。

对于一个Diameter节点,其对端节点,或者基于静态配置,或者基于动态(利用SLP、DNS协议)发现。当Diameter协议栈启动时,Diameter节点会尝试与每一个它所得知的对端节点建立套接字连接。

在成功建立一个套接字连接,即对等连接后,两个Diameter节点将进行能力协商,交换协议版本、所支持的应用协议、安全模式等信息。能力协商是通过Diameter的能力交换请求(CER,Capabilities-Exchange-Request)和能力交换响应(CEA,Capabilities-Exchange-Answer)两个Diameter消息的交互实现的。能力协商之后,应该把有关对端所支持的应用等信息保存在高速缓存中,这样就可以防止把对端不认识的消息和AVP发送给对端。

对等连接可以被正常中止,这需要一个Diameter节点主动发起对等连接中止请求(DPR,Disconnect-Peer-Request)消息,对端收到此消息,并回答对等连接中止应答(DPA,Disconnect-Peer-Answer)消息后,先行中止底层连接。对于除此之外的对等连接的中止情况(如网络故障、一端系统故障等),在发现这类连接异常中止的一端时,要按照定时器设置,不断地尝试恢复建立对等连接。

正常的对等连接上可以传输各类Diameter消息,在连接空闲无消息传送超过一定时间时,对等连接两端将发送连接正常检测消息(DWR/DWA,Device-Watchdog-Request/Answer)。而一旦DWR/DWA消息收发异常,Diameter节点将认定对等连接故障,或者尝试恢复建立连接,或者将消息通路转换到备用的对等连接上。

Diameter的消息格式

Diameter消息的头部包括20个字节,结构如图2所示。头4个字节是8比特的版本信息和24比特的消息长度(包括消息头长度)。随后的4个字节是8比特的消息标志位和24比特的命令代码。

命令代码用来表示这个消息所对应的命令,请求消息和相应的回答消息共享一个命令代码。

应用标识、逐跳标识和端到端标识都有4个字节,其中应用标识用以指示消息适用的应用,逐跳标识用于判断请求与应答的对应关系,而端到端标识主要用于重复消息的检查。

消息头部后的全部字节就是消息的具体内容,以属性值对AVP(Attribute-Value-Pair)的形式逐个头尾衔接。AVP的格式也是由头部和数据组成,如图3所示,结构为:头4个字节是AVP代码,下四个字节由8比特的AVP标志和24比特的AVP长度(包括AVP头部长度)构成,AVP标志用于通知接收端如何处理这个属性。

头部后的字节就是数据内容。AVP内的数据类型,目前包括字符串、32比特整数、64比特整数、32比特浮点数、64比特浮点数,以及AVP组等。

Diameter的消息处理和用户会话

Diameter客户端与Diameter服务器都可以组成相应的请求消息,发送给对方。正是从这点考虑,Diameter属于对等协议(peer to peer),而不是如RADIUS一样的客户/服务器模式的协议。

为处理用户的接入,Diameter客户端通过Diameter基础协议和应用协议,与Diameter服务器进行一系列的信息交换,而这样一个从发起到中止的一系列信息交互,在Diameter协议里被称为一个用户会话(User Session)。

一般的AAA业务可以大致分成两类:一类包括用户的认证和授权,可能还包括计费(如移动电话业务);另一类则是仅包括对用户的计费(如目前的主叫拨号接入业务)。为此,Diameter基础协议提供对应的两类用户会话,为上层的应用服务。

一个用户会话的建立,一般是由Diameter客户端发起,中间可以途径若干Diameter代理、重定向器或协议转换器,一直延伸到Diameter服务器。

用户会话的结束,完全由Diameter客户端决定,但服务器也可以先行发出中止用户会话请求(ASR,Abort-Session-Request),在客户端同意中止请求的情况下,会响应中止用户会话应答(ASA,Abort-Session-Answer),然后再发出用户会话结束请求,通知服务器结束用户会话;否则用户会话仍得以保持。在未得到服务器请求的情况下,客户端也可以自行给服务器发出用户会话结束请求,例如在客户端自身异常,或是用户接入异常等的情况下。

通过对用户会话的建立和结束的控制,Diameter应用很容易实现可靠的以用户为单位的业务资源管理。

Diameter的计费

当用户被允许接入时,Diameter客户端将根据情况产生针对用户的计费信息。这些计费信息将被封装在具体Diameter应用专有的AVP内,由Diameter基础协议中定义的计费请求(ACR,Accounting-Request)消息,传送给Diameter服务器。服务器将响应计费应答(ACA,Accounting-Answer)消息,指示计费成功或拒绝。客户端只有在收到成功的计费响应时,才能清除已经被发送的计费记录。当收到计费拒绝指示时,客户端将中止用户接入。

Diameter支持实时的计费,客户端通过在首次计费请求/响应交互过程中协商好的计费消息间歇时间,定时向服务器发送已收集的计费信息。这种实时计费确保了对用户信用的实时检查。

Diameter消息的安全传输

Diameter客户端(如网络接入服务器)必须支持Ipsec,可以支持TLS;而Diameter服务器必须支持Ipsec和TLS。IPsec主要应用在网络的边缘和域内的流量,而域间的流量主要通过TLS来保证安全。

由于IPsec和TLS只能保证逐跳的安全,也就是一个传输连接上的安全。当消息通过Diameter代理时,代理会修改消息,这样通过IPsec或TLS取得的安全信息在通过代理时就丢弃了。而Diameter CMS应用提供了端到端的安全性。端到端的安全性是通过两个对等端点间支持AVP的完整性和机密性提供的。Diameter CMS应用中采用了数字签名和加密技术来提供所要求的安全业务。

尽管是由每个对等端的安全策略决定使用端到端的安全性的场合,如当TLS或IPsec提供的传输层面上的安全性足够时,可能不需要端到端的安全性,但Diameter基础协议中还是强烈建议所有的Diameter实现都支持端到端的安全性。这样Diameter CMS应用就有别于其他的Diameter应用,它一般是和Diameter基础协议共存的。

java diameter 协议栈 java diameter 协议栈,实现diameter协议组定义的基本方法和接口-java diameter protocol stacks, protocol definition diameter realize the basic methods and interface 立即下载

相关推荐

abaqus2matlab的安装与使用:如何用matlab提取abaqus的odb结果

官网abaqus2matlab官网地址matlab社区地址matlab社区地址在这里可以看到.m文件的源码论文:Abaqus2Matlab: A suitable tool for finite element post-processingabaqus2matlab可以处理.inp、.fil、.odb三种类型的文件。.inp文件:处理功能就在于只是单纯的输出inp文件,由于我自己写了自己的函数,不需要用到这个功能。

qianxin1234的博客 2017

diameter协议栈_Diameter协议学习笔记一(协议介绍)

原文来自百度文库http://wenku.baidu.com/view/bc91976127d3240c8447efec.html?re=view一、摘要:Diameter协议主要为应用程序提供认证、鉴权、计费框架,即AAA,并支持本地AAA和漫游场景下的AAA。二、介绍:AAA协议、例如TACACS、RADIUS起初是为了提供PPP及终端接入,随着Internet及新的接入技术的发展,包括无线、...

weixin_28818643的博客 1689

Chromatix 7实战:从零开始调优ISP模块的完整流程(附常见报错解决方案)

本文提供了高通平台Camera调试工具Chromatix 7的完整实战指南。详细阐述了从环境准备、项目初始化、基础校正(如LSC、BPC)到核心ISP管线(Demosaic、CCM、HDR)及后处理(CAC、ANR)的调优全流程,并附带了常见报错(如“未初始化实例”)的解决方案,旨在帮助工程师建立系统性的调试方法论。

weixin_29290863的博客 622

Diameter协议

Diameter是计算机网络中使用的一个认证、授权和审计协议。它从功能更少的RADIUS协议进化而来,并且取代之。        Dimater应用通过添加新的命令或属性扩展基础协议,例如使用扩展认证 协议(EAP)。 与RADIUS协议比较        名字是一个单词游戏(从RADIUS,半径到DIAMETER,直径),从前任RADIUS协议演化而来(直径是半径的二倍)。Diameter

勤能补拙 4万+

免费大容量国外网盘测评:冷数据归档与rclone加密接入

云存储的本质,是通过对象存储、冗余编码和分层缓存,把本地磁盘容量问题转化为网络访问与数据管理问题。免费大容量国外网盘常以空间换用户规模或付费转化,容量政策、传输策略、协议支持和退出成本,往往比标称容量更决定长期可用性。支持 WebDAV、S3 兼容和命令行工具的服务,可接入 rclone 等自动化流程,再配合客户端加密与冷热分层,用于冷数据归档、老项目备份和家庭影像保存。理解带宽换算、单文件上限、保活机制与传输一致性后,评估话题型大容量网盘与专业向协议网盘,就能把免费空间纳入可靠存储层。围绕免费大容量国外网

weixin_31292729的博客 213

执行HDevelop项目

这一节,我们讲述的是如何用HDevEngine加载和执行一个HDevelop项目。代码部分来源于示例程序exec_program(源文件exec_program.cpp),检测塑料零件边界上的毛刺。1.Step 1:初始化首先,我们包含HALCON/C++和HDevEngine头文件以及命名空间。注意到在这个示例程序中,HDevEngine头文件已经包含在my_hdevoperatorimpl中,所

Z's Palace 2994

RFC3588—Diameter 基础协议技术要求

电信计费这块业务的,可以看看了解下rfc3588,rfc4006,对Diameter协议可以有点儿基础的认识,想了解更多可以搜索Diameter 基础协议技术要求

cw1947的博客 4049

华为OD机试真题2026双机位C卷 Python&JS 实现【明日之星选举】

给定一组选票votes。votes[i]代表第 i 张选票的内容,包含一个字符串"zhangsan,hanmei",表示推荐zhangsan为明日之星,反对 hanmei 称为明日之星。赞成或反对使用逗号(,)分割。 给定一个数组n,表示最后将筛选出赞成票最多的n个人,如果赞成票相同,则反对票越少,排序越靠前;如果赞成票和反对票都相同,则按照姓名字典序升序排序。

MISAYAONE的博客 318

Diameter基础协议摘要

Diameter是新一代AAA协议,可以承载与TCP或者SCTP协议之上,被广泛应用于IMS,LTE网络中。RFC3588定义了Diameter的基础协议,各种应用可以在此基础上对其进行扩展(主要是定义新的Application ID,Command和AVP);基础协议中包括一个基本的Accounting功能,如果需要Authentication或者Authorization通常需要进行对基础协议扩展。

Minico's blog 9357

Vibe Draw:AI实现2D草图转3D建模,开源免费的设计师宝藏软件!

AI实现2D草图转3D建模,开源免费,设计师进来看一下?

Code_流苏:在代码中寻诗意,在实践中觅真知 2150

Android 11.0 app添加校验锁(输入密码才能进入app)

11.0定制化开发中客户要求给app添加锁,就是点击app 图标时,会弹出Dialog,需要输入密码才能进入app中,就是应用校验锁, 最开始想到在Launcher3中实现,但是如果更换了默认Launcher 又不行了 所以最终还是得拦截app启动Activity 从这里入手了 Launcher与APP是在两个不同的进程中,他们之间的通信是通过Binder完成的,点击Launcher上的某个APP,这时会调用Launcher的startActivitySafely方法。 public boolean sta

安卓兼职framework和app工程师的博客 1952

DIAMETER 协议是在 RADIUS 协议基础上发展而来的下一代认证、授权和计费(AAA)协议

**核心改进** 1. **可靠性增强**:采用基于确认的消息传输机制,支持重传、失败检测与路径探测,避免 RADIUS 中因丢包导致的服务中断。 2. **可扩展性更强**:使用 AVP 结构允许灵活添加新参数,支持未来协议演进。 3. **支持漫游与跨域认证**:通过代理链路转发和路由回溯机制,实现多运营商间的 AAA 信息交换。 4. **兼容 EAP 协议**:可用于无线网络中基于 EAP-SIM、EAP-AKA 等的身份认证流程。 5. **强大的记账能力**:支持开始、中间、

[Blog][Domain] programb.blog.youkuaiyun.com 724

基于STM32F103的智能门禁门锁门卫系统设计

本文设计了一种基于STM32F103单片机的智能门禁系统,集成了密码、射频IC卡和指纹识别三种验证方式。系统采用模块化设计,包含MFRC522射频模块、AS608指纹模块、矩阵键盘、OLED显示和舵机控制等硬件,实现了身份验证、密码修改、IC卡/指纹管理以及安全防护功能。测试结果表明系统响应迅速(密码验证250ms、指纹验证600ms)、功耗低(待机50mA),且具备掉电密码保存功能。该系统操作简便、功能完善,适用于家庭和办公场所,具有较高实用价值。未来可扩展远程控制、人脸识别等功能以进一步提升智能化水平。

3254968421的博客 318

diameter协议栈_Diameter协议摘要

---------选择同学整理文档1. 协议概述Diameter协议主要为应用程序提供认证、鉴权、计费框架,即AAA,并支持本地AAA和漫游场景下的AAA。1.1. 特点介绍以前的AAA协议如RADIUS、TACACS主要是针对PPP服务和终端服务而设计的。随着网络技术的发展,新的接入方式如无线接入、DSL接入、移动IP陆续出现,以太网也不断发展,AAA中的网络访问服务器(NAS)自身也逐渐...

weixin_33746833的博客 3697

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

Diameter 消息格式解析

Diameter消息解释 Diameter消息有一个Diameter header和一系列的AVP组成。 Diameter 基础协议的数据包格式显示如下: Version:必须设置为1,表示 Diameter 版本1。 Command Flags:八位标识。 Command-Code:使用3个八位组段,配合信息传送需求。 Application-ID:4个八位组,用来识别...

weixin_30867015的博客 1396

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

Diameter 协议

   Diameter协议2009-10-23 09:43Diameter协议 Diameter协议族包括基础协议(Diameter Base Protocol)和各种应用协议。本文介绍的基础协议提供了作为一个AAA协议的最低需求,是Diameter网络节点都必须实现的功能,包括节点间能力的

781

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

diameter协议栈_Diameter协议结构原.ppt

Diameter基本概念和应用 ISSUE1.0 参考资料 RFC3588 IMS测试工具组 学习完此课程,您将会: 对Diameter协议有基本的了解 知道Diameter协议在IMS的基本应用 Diameter起源 Diameter协议的最初提出是作为Radius协议的改进或者替代,它的引入是作为支持基于IP技术的AAA协议 认证(Authentication) 用户在使用网络系统中的资源时对...

weixin_39602005的博客 623

Diameter Base Protocol

<br />引用  rfc : http://www.ietf.org/rfc/rfc3588.txt<br /> <br /> <br />RFC 3588                Diameter Based Protocol           <br /><br />Table of Contents<br /><br />   1.  Introduction.................................................   6<br />       1

RTC hacker 2460

网络授权和认证协议 Diameter

DIAMETER 协议是为诸如网络访问或 IP 移动等应用程序提供认证,授权和计费(AAA)结构所设计。同时Diameter 也有意应用于本地和漫游两种情况下的认证,授权和计费。Diameter 协议是作为 RADIUS 协议的改进版而设计。DIAMETER 协议不能解决 RADIUS 模式中的缺陷。DIAMETER 之后的基本概念用于提供可扩展的基础协议,从而可为新的接入技...

weixin_34418883的博客 579

diameter协议及OpenBloX代码解读

Diameter Diameter 是一个由IETF发布的下一代信令协议,见文档RFC3588。 Diameter协议的设计目的是创建一个能够充分满足网络访问控制要求的AAA协议(认证,授权,计费)。Diameter设计要求的具体内容如下:  具有良好的网络适应性和可扩展性;  统一且良好的失败控制和检测机制;  完整的传送层安全保证(包括域内和域间);  数据传输可靠...

我的博客 1742

diameter structure

diameter message  =   diameter header + AVPs Diameter Header Bit offset  0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18

surpass1026的专栏 653

SIP, DIAMETER, RTP协议介绍及使用场景

它在IP网络中应用广泛,支持点对点通信,且易于扩展和实现。SIP协议的一个典型用途是控制RTP(Real-time Transport Protocol,实时传输协议)流,RTP协议负责实际的媒体数据传输。DIAMETER相较于RADIUS,提供了更可靠的传输机制,支持TCP和SCTP作为传输层协议,并且增加了对代理、服务器发起消息、能力协商等特性的支持。RTP(Real-time Transport Protocol,实时传输协议)是一种网络传输协议,用于通过IP网络传输音频和视频等多媒体数据。

记录有价值的内容 973

Diameter 协议详解 -----Diameter Credit Control Protocol AAA 东海陈光剑

DCC,就是Diameter Credit Control,即信用控制应用,属于应用协议.And it is a peer to peer protocol. Diameter基础协议是各类应用实施的基本协议要求; 传输机制,主要定义Diameter协议传输层的问题及解决方法,还包括失败检测算法和状态机; 拥有各种不同功能的应用(包含DCC)都必须支持基础协议 A...

iteye_7332的博客 4046

diameter协议

Diameter协议介绍:http://blog.youkuaiyun.com/fan_hai_ping/article/details/40835263 Diameter消息应用层的路由:http://www.cnblogs.com/iloveyoucc/archive/2012/06/06/2537716.html RFC6733:http://tools.ietf.org/html/rf

Welcome to Niki_Cao's Small World 867
上一篇: [Private Manual]Different ways of solving your problem?
下一篇: 转正纪念日——公元2009年4月7日
平衡有度
博客等级 码龄21年 35粉丝 253原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值