OFTP协议由欧洲汽车标准组织Odette创建,第一个版本于1986年发布,旨在用于当时可用的网络服务,主要是X.25服务。Odette还考虑到VAN(增值网络)服务可能是通信链的一部分。OFTP是汽车,工程和运输等商业领域的事实标准。OFTP还用于与公共部门的合作伙伴进行数据交换,如瑞典海关数据系统。

OFTP2 的特性:

▪数据压缩
▪建立信任并促进贸易伙伴之间通过互联网进行安全通信(SSL / TLS,身份验证,签名,加密等)
▪处理非常大的文件(> 500 GB)
▪更长的文件描述
▪其他字符集(例如中文,日文等)的
可用性OFTP2 向后兼容早期版本的OFTP用于X.25 / ISDN连接。

名词解释

SSID
开始会话标识。
这是发起会话的请求。 它包含请求者的用户和密码等信息。

SSID 格式( RFC 2204, based on ISO 6523)

Code Identifier 'O' - Indicates ODETTE assigned the Organization Identifier. Other values can be used for non-ODETTE codes. This field is a fixed length of 1 character.
International Code A code forming part of the Organization Identifier. This field may be of variable length up to 4 characters.
Organization Code A code forming part of the Organization Identifier. This field may contain the letters A to Z, the digits 0 to 9, and space and hyphen characters. This field may be of variable length up to 14 characters long.
Computer Sub-Address A locally assigned address which uniquely identifies a system within an organization (defined by an Organization Identifier). This field may be of variable length up to 6 characters long.

SFID
开始文件识别。
这是发送文件的权限请求。 它包含文件的来源和目的地,名称和物理大小等信息。通常SFID的值可以跟SSID一致,如果一个公司的多个部门可以使用不同的格式。

OFTP会话

  1. 合作伙伴A呼叫远程合作伙伴B(通过电话线或IP连接的ISDN)。
  2. 伙伴B使用SSRM命令进行响应,指示他已准备好开始使用OFTP协议。
  3. 合作伙伴A发送“开始会话”命令(SSID),该命令描述其身份(OFTP用户和密码,交换数据缓冲区提议,安全认证Y / N,......)。
  4. 合作伙伴B使用他的SSID(他的OFTP用户名和密码)进行响应。
  5. 如果在SSID中请求“安全认证”,则启动安全认证协议序列以在本地和远程伙伴之间交换认证质询(AUTH)和认证响应(AURP)。
  6. 合作伙伴A发送“开始文件”命令(SFID),指示他们有要发送的文件。 SFID包含有关发起者和目的地,OFTP虚拟文件名,文件格式以及文件压缩,文件加密和签名EERP等选项的信息。组织可能拥有每个部门的多个创建者和目标逻辑合作伙伴。
  7. 合作伙伴B以“发送文件肯定答复”命令(SFPA)响应,表明他们愿意接受该文件。注意:如果B想拒绝该文件,它会发送否定答案SFNA)
  8. 合作伙伴A开始使用协商的“Exchange缓冲区大小”在DATA命令中发送数据。
  9. 在7个数据块(默认信用​​窗口大小)之后,伙伴B发回CDT命令,该命令指示伙伴B仍在监听。
  10. 在文件末尾,合作伙伴A发送EFID以指示文件的末尾已到达。
  11. 然后,伙伴B发回“文件结束肯定答复(EFPA)”,表明文件已成功接收。
  12. 合作伙伴A没有更多要发送的文件。使用Change Direction命令,它允许合作伙伴B发送他的文件。合作伙伴A和B正在交换他们的角色:现在B是发送者,A是监听者。如果合作伙伴B有一些文件要发送,则该过程开始。然后,从合作伙伴BB发送DATA命令再次启动该过程。
  13. 在文件的末尾,它们使用“更改方向”命令再次更改方向。
  14. 合作伙伴A通过发送“端到端响应”(EERP)来确认该文件。
  15. 合作伙伴B通过发送RTR确认收到EERP。
  16. 合作伙伴A无需发送任何内容,并将控制权交给合作伙伴B.
  17. 合作伙伴B也无需发送任何内容并发送“会话结束”命令(ESID)
  18. 合作伙伴A收到ESID并挂断该线路。

实施注意事项

防火墙

防火墙必须适用于OFTP2,端口3305(OFTP)加6619(TLS)。端口必须在两个方向上打开才能启用拨出和拨入.

DNS与IP

使用固定IP地址和DNS名称(例如oftp.supplier.com)。

Odette正在发布已批准的CA列表

www.odette.org/tsl/tsl_oftp2.xml

参考信息

附件资料

EDI parameter agreement for suppliers
Odette Secure Price list

OFTP简介的更多相关文章

  1. ASP.NET Core 1.1 简介

    ASP.NET Core 1.1 于2016年11月16日发布.这个版本包括许多伟大的新功能以及许多错误修复和一般的增强.这个版本包含了多个新的中间件组件.针对Windows的WebListener服 ...

  2. MVVM模式和在WPF中的实现(一)MVVM模式简介

    MVVM模式解析和在WPF中的实现(一) MVVM模式简介 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在 ...

  3. Cassandra简介

    在前面的一篇文章<图形数据库Neo4J简介>中,我们介绍了一种非常流行的图形数据库Neo4J的使用方法.而在本文中,我们将对另外一种类型的NoSQL数据库——Cassandra进行简单地介 ...

  4. REST简介

    一说到REST,我想大家的第一反应就是“啊,就是那种前后台通信方式.”但是在要求详细讲述它所提出的各个约束,以及如何开始搭建REST服务时,却很少有人能够清晰地说出它到底是什么,需要遵守什么样的准则. ...

  5. Microservice架构模式简介

    在2014年,Sam Newman,Martin Fowler在ThoughtWorks的一位同事,出版了一本新书<Building Microservices>.该书描述了如何按照Mic ...

  6. const,static,extern 简介

    const,static,extern 简介 一.const与宏的区别: const简介:之前常用的字符串常量,一般是抽成宏,但是苹果不推荐我们抽成宏,推荐我们使用const常量. 执行时刻:宏是预编 ...

  7. HTTPS简介

    一.简单总结 1.HTTPS概念总结 HTTPS 就是对HTTP进行了TLS或SSL加密. 应用层的HTTP协议通过传输层的TCP协议来传输,HTTPS 在 HTTP和 TCP中间加了一层TLS/SS ...

  8. 【Machine Learning】机器学习及其基础概念简介

    机器学习及其基础概念简介 作者:白宁超 2016年12月23日21:24:51 摘要:随着机器学习和深度学习的热潮,各种图书层出不穷.然而多数是基础理论知识介绍,缺乏实现的深入理解.本系列文章是作者结 ...

  9. Cesium简介以及离线部署运行

    Cesium简介 cesium是国外一个基于JavaScript编写的使用WebGL的地图引擎,一款开源3DGIS的js库.cesium支持3D,2D,2.5D形式的地图展示,可以自行绘制图形,高亮区 ...

随机推荐

  1. [洛谷P1886]滑动窗口 (单调队列)(线段树)

    ---恢复内容开始--- 这是很好的一道题 题目描述: 现在有一堆数字共N个数字(N<=10^6),以及一个大小为k的窗口. 现在这个从左边开始向右滑动,每次滑动一个单位,求出每次滑动后窗口中的 ...

  2. webstorm过期最新激活方法

    打开webstorm 注册时,在打开的License Activation窗口中选择“License server”,在输入框输入下面的网址:http://idea.iteblog.com/key.p ...

  3. Redis自学笔记:3.3入门-散列类型

    3.3散列类型 3.3.1介绍 散列类型不能嵌套其他数据类型,一个散列类型可以包含至多232-1个字段 散列类型适合存储对象:使用对象类别和ID构成键名,使用字段表示对象的数据, 而字段值则存储属性值 ...

  4. 机器学习系列-tensorflow-01-急切执行API

    tensorflow急切执行概述 Eager execution is an imperative, define-by-run interface where operations are exec ...

  5. JavaScript基础笔记(十二)Ajax

    Ajax 一.XMLHttpRequest对象 一)XHR用法 var xhr = new XMLHttpRequest(); //open()方法,参数一:发送方法,参数二:请求的URL,参数三:是 ...

  6. Python发送QQ邮件

    #!/usr/bin/python # -*- coding: UTF-8 -*-    import smtplib from email.mime.text import MIMEText fro ...

  7. 3ds max学习笔记-- 复合对象运算

    1,ProBoolean(超级布尔) 栗子: 新建一长方体,两个圆柱体,如下: 选择底部长方体,进入[复合对象],修改[操作],单击[拾取操作对象B],点击圆柱: 效果如下,线面较多: 高级布尔效果图 ...

  8. Seaborn入门

    Seaborn入门 Seaborn是基于matplotlib的python数据可视化库,提供更高层次的API封装,使用起来更加方便快捷. displot displot()集成了hist直方图和kde ...

  9. 如何修改CCS 7.2 代码和注释的颜色以及折叠代码

    默认的字体总是让人感觉很难受,作为一个热爱生活的人,工作的时候也得尽力创造一个舒适的环境----程序猿们,对自己好一点. 首先废话一下--------------------------------- ...

  10. list utilities监视数据库前滚操作

    您可以使用 db2pd 或 LIST UTILITIES 命令来监视数据库前滚操作的进度. 过程 发出 LIST UTILITIES 命令并指定 SHOW DETAIL 参数 db2 LIST UTI ...