RFC 822 中文版 MIME解析基础(3)(第3-4页)

本文档介绍了MIME解析基础,包括BNF符号约定,如规则命名、可选、重复和列表等,并提供了示例进行详细解释,便于理解MIME的规则结构。

第3页

--------------------------------------------------------------------------------------------------------------------------------------
     2.  NOTATIONAL CONVENTIONS

          This specification uses an augmented Backus-Naur Form  (BNF)
     notation.  The differences from standard BNF involve naming rules
     and indicating repetition and "local" alternatives.

     2.1.  RULE NAMING

          Angle brackets ("<", ">") are not  used,  in  general.   The
     name  of  a rule is simply the name itself, rather than "<name>".
     Quotation-marks enclose literal text (which may be  upper  and/or
     lower  case).   Certain  basic  rules  are  in uppercase, such as
     SPACE, TAB, CRLF, DIGIT, ALPHA, etc.  Angle brackets are used  in
     rule  definitions,  and  in  the rest of this  document, whenever
     their presence will facilitate discerning the use of rule names.

     2.2.  RULE1 / RULE2:  ALTERNATIVES

          Elements separated by slash ("/") are alternatives.   There-
     fore "foo / bar" will accept foo or bar.

     2.3.  (RULE1 RULE2):  LOCAL ALTERNATIVES

          Elements enclosed in parentheses are  treated  as  a  single
     element.   Thus,  "(elem  (foo  /  bar)  elem)"  allows the token
     sequences "elem foo elem" and "elem bar elem".

     2.4.  *RULE:  REPETITION

          The character "*" preceding an element indicates repetition.
     The full form is:

                              <l>*<m>element

     indicating at least <l> and at most <m> occurrences  of  element.
     Default values are 0 and infinity so that "*(element)" allows any
     number, including zero; "1*element" requires at  least  one;  and
     "1*2element" allows one or two.

     2.5.  [RULE]:  OPTIONAL

          Square brackets enclose optional elements; "[foo  bar]"   is
     equivalent to "*1(foo bar)".

     2.6.  NRULE:  SPECIFIC REPETITION

          "<n>(element)" is equivalent to "<n>*<n>(element)"; that is,
     exactly  <n>  occurrences  of (element). Thus 2DIGIT is a 2-digit
     number, and 3ALPHA is a string of three alphabetic characters.

--------------------------------------------------------------------------------------------------------------------------------------
     2.  符号约定

          本标准使用了一种扩展的巴克斯范式(BNF)。本标准的范式定义和标准
     的BNF的差别主要包括:命名规则,重复标志和一些局部变动。
         

     2.1.  命令规则

          通常,尖括号("<", ">")没有使用。一个规则的名字仅仅是名字本身,
     而不是"<名字>"。引号包含合法文本( 它们可能是大写或者小写 ).有几个
     基本的定义使用了大写,比如SPACE, TAB, CRLF, DIGIT, ALPHA等等.在下面
     的规则定义中,会用尖括号, 它们将有助于我们明确规则名.
    

     2.2.  规则1 / 规则2:  可选的

          用斜杠("/")分开的元素,表示可选. 例如:
          "foo / bar"表示foo和bar都满足条件.
         
     2.3.  (规则1 规则2):  局部可选

          用圆括号包起来的多个元素,被认为是一个元素. 例如:
          "(elem  (foo  /  bar)  elem)"
          可以是"elem foo elem",也可以是"elem bar elem"

     2.4.  *规则:  重复

          星号 "*" 代表星号之后的一个元素的重复. 完整的语法是
         
             <最小次数>*<最大次数>元素
         
          代表元素被重复至少<最小次数>次,最多<最大次数>次,<最小次数>和
     <最大次数>都可以没有,如果没有, 默认值分别是0和无穷大. 这样"*(元素)",
     代表了元素被重复0到任意多次. "1*(元素)"代表元素被重复1到任意次,
     "1*2(元素)"代表重复一次或者两次.

     2.5.  [规则]:  可选

          方括号里的元素, 表示可有可无, "[foo bar]" 等价于 "*1(foo bar)"

     2.6.  带个数的重复:  指定次数的重复

          "<n>(元素)" 等价于 "<n>*<n>(元素)", 表示元素被重复n次, 例如:
          2DIGIT,表示2个数字,3ALPHA表示3个字母.

--------------------------------------------------------------------------------------------------------------------------------------

第4页

--------------------------------------------------------------------------------------------------------------------------------------
     2.7.  #RULE:  LISTS

          A construct "#" is defined, similar to "*", as follows:

                              <l>#<m>element

     indicating at least <l> and at most <m> elements, each  separated
     by  one  or more commas (","). This makes the usual form of lists
     very easy; a rule such as '(element *("," element))' can be shown
     as  "1#element".   Wherever this construct is used, null elements
     are allowed, but do not  contribute  to  the  count  of  elements
     present.   That  is,  "(element),,(element)"  is  permitted,  but
     counts as only two elements.  Therefore, where at least one  ele-
     ment  is required, at least one non-null element must be present.
     Default values are 0 and infinity so that "#(element)" allows any
     number,  including  zero;  "1#element" requires at least one; and
     "1#2element" allows one or two.

     2.8.  ; COMMENTS

          A semi-colon, set off some distance to  the  right  of  rule
     text,  starts  a comment that continues to the end of line.  This
     is a simple way of including useful notes in  parallel  with  the
     specifications.

 

--------------------------------------------------------------------------------------------------------------------------------------


    2.7.  #规则:  列表


          "#"类似"*",它的语法如下:
                 <最小次数>#<最大次数>元素

      代表元素被重复至少<最小次数>次,最多<最大次数>次,<最小次数>和
     <最大次数>都可以没有,如果没有, 默认值分别是0和无穷大
    
     #规则也*规则的不同在于, 各个元素之间用一个或多个逗号(",")隔开.
     这个规则让表达一个列表非常容易; 如下:
      '(元素 *("," 元素))' 也可以写成
      "1#元素"
      
     #规则使用时,允许空元素,但是空元素不计算个数. 就是说"(元素),,(元素)"
     是允许的,但是它只有两个元素. 在下面的描述中,如果说至少需要一个元素,
     是说至少需要一个非空元素.
  "1#元素"表示一个任意多个元素
  "1#2元素"代表一个或两个元素
        
     2.8.  ; 注释

          分号表示注释, 从分号的位置到行尾都是注释. 如果某行以分号开头,表示整行
     都是注释. 这是一个在定义中包含有用信息的好方法
    
    
--------------------------------------------------------------------------------------------------------------------------------------

 

下载代码方式:https://pan.quark.cn/s/604a73f2a5f9 流量分类机制(IEEE 802.1Qbv)将以太网数据传输划分为多个不同类别,每个类别均被分配特定时段以获取网络访问权,借此构建了类别专属的保护“路径”。依托IEEE 802.1Qcc的优化SRP与性能提升,用户网络接口(UNI)得到扩充,从而支持了远程集中化的网络设置。 ### IEEE 802.1Qbv TSN:流量调度技术详解 #### 一、IEEE 802.1Qbv TSN概述 在当前迅速演进的科技领域中,特别是工业自动化、汽车电子以及高性能计算等领域对实时通信的需求持续上升,时间敏感型网络(Time-Sensitive Networking, TSN)技术随之出现。其中,IEEE 802.1Qbv规范是TSN体系中的一个关键构成,主要聚焦于以太网中时间敏感数据流量的管理与调度。 #### 二、IEEE 802.1Qbv标准背景 IEEE 802.1Qbv由IEEE LAN/MAN标准委员会制定,作为IEEE 802.1Q-2014规范的一个延伸,目的是为支持定时传输的数据单元提供更高效、更精准的服务。该规范通过引入时间敏感的流量调度机制,使网络能更好地适应工业控制等环境下的实时性要求。 #### 三、核心概念阐释 **1. 流量调度(Scheduled Traffic)** - **定义**:IEEE 802.1Qbv的核心功能之一是流量调度,它允许依据预定的时间计划来传输不同类型的网络数据。 - **作用**:通过设定优先级和分配时间间隙,保障关键任务数据单元能在规定时限内完成传输,从而增强整个网络的可靠性与确定性。 **2. 类别特定的保护“路径”** - **...
打开链接下载源码: https://pan.quark.cn/s/3e18267cc8f4 ### 倍福PLC从入门到精通 #### 一、系统概述 倍福PLC(Programmable Logic Controller)是一种具有高性能的工业自动化控制设备,其采用了PC架构并融合了实时操作系统TwinCAT,非常适用于复杂多变的工业控制环境。本书着重阐述了倍福PLC的基础理论、安装设置流程以及具体的应用技巧。 **核心知识点:** 1. **原理说明**:倍福PLC基于PC的架构设计,意味着它能够借助PC的强大计算能力和丰富的接口资源来执行复杂的控制任务。同时,通过整合TwinCAT实时操作系统,能够实现高精度的时间同步和低延迟的数据处理性能。 2. **选型建议**:选择合适的倍福控制器至关重要,例如CX系列、CPxxxx系列或Cxxxx系列等,它们各自具有独特的优势,适用于不同的应用场景。选型时需要考虑的因素包括处理速度、I/O接口数量、内存容量等。 3. **安装设置**:详细说明了在Windows操作系统环境下如何安装和配置TwinCAT 2.0软件,涵盖了系统环境的准备、软件安装步骤以及必要的系统设定等。 4. **接线方法**:提供了清晰的接线图示和步骤说明,指导用户正确地将控制器与外部设备连接。 #### 二、编程入门 这一章节主要面向初次接触倍福PLC的用户,通过简单的实例程序来讲解编程的基本流程和技术要点。 **核心知识点:** 1. **编程环境熟悉**:了解TwinCAT 2.0的编程环境,包括开发工具的使用方法和程序结构等。 2. **基础编程技能**:学习如何编写控制逻辑,掌握基本的编程指令如条件语句、循环结构等。 3. **程序调试方法*...
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值