Commit 0f1ff888 authored by Miguel Angel Reina Ortega's avatar Miguel Angel Reina Ortega
Browse files

Fixes for config file

parent d228556e
Loading
Loading
Loading
Loading
Loading
+306 −1
Original line number Diff line number Diff line
@@ -38,7 +38,9 @@ manual_types:
          type: string
          format: uri
          description: A URI reference that identifies the specific occurrence of the problem

    Not_specified:
      type: string
      description: Placeholder for unspecified type. Please update with the correct schema. This attribute refers to another document. Please see document number ETSI-MEC033-API for details. 
    SerializerType:
      x-etsi-ref: 8.1.6.3
      type: string
@@ -54,7 +56,310 @@ manual_types:
        description: eXtensible Mark-up Language version 1.1 [10]
      - value: PROTOBUF3
        description: Protocol buffers version 3 [i.3]
    TrafficRuleDescriptor:
      x-etsi-ref: 6.2.1.9
      type: object
      properties:
        trafficRuleId:
          description: Identifies the traffic rule.
          type: string
        filterType:
          type: string
          description: 'Definition of filter type: per FLOW or PACKET

            If it is per FLOW, the filter matches upstream (e.g. UE->EPC) packets and downstream (e.g. EPC->UE) packets are handled by the same context.'
          enum:
          - SEE_DESCRIPTION
        priority:
          description: "Priority of this traffic rule within the range 0 to 255. If traffic rule conflicts, the one with higher priority take precedence. See note\_1."
          type: integer
        trafficFilter:
          description: The filter used to identify specific flow/packets that need to be handled by the MEC host.
          type: array
          minItems: 1
          items:
            $ref: '#/components/schemas/TrafficFilter'
        action:
          type: string
          description: 'Identifies the action of the MEC host data plane, when a packet matches the trafficFilter, the example actions include:

            DROP,

            FORWARD_DECAPSULATED,

            FORWARD_ENCAPSULATED,

            PASSTHROUGH,

            DUPLICATE_DECAPSULATED,

            DUPLICATE_ENCAPSULATED '
          enum:
          - SEE_DESCRIPTION
        dstInterface:
          description: Describes the destination interface information. If the action is FORWARD_DECAPSULATED, FORWARD_ENCAPSULATED or PASSTHROUGH, one value shall be provided. If the action is DUPLICATE_DECAPSULATED or DUPLICATE_ENCAPSULATED, two values shall be provided. See note 2. If the action is DROP, no value shall be provided.
          $ref: '#/components/schemas/InterfaceDescriptor'
      required:
      - trafficRuleId
      - filterType
      - priority
      - trafficFilter
      - action
      description: "|-\n  NOTE 1:\tValue indicates the priority in descending order, i.e. with 0 as the highest priority and 255 as the lowest priority.\nNOTE 2:\tSome applications (like inline/tap) require two interfaces. The first interface in the case of inline/tap is on the client (e.g. UE) side and the second on the core network (e.g. EPC) side."
    TrafficFilter:
      x-etsi-ref: 6.2.1.10
      type: object
      properties:
        srcAddress:
          description: 'An IP address or a range of IP addresses.

            For IPv4, the IP address could be an IP address plus mask, or an individual IP address, or a range of IP addresses.

            For IPv6, the IP address could be an IP prefix, or a range of IP prefixes.'
          type: array
          minItems: 0
          items:
            type: string
        dstAddress:
          description: 'An IP address or a range of IP addresses.

            For IPv4, the IP address could be an IP address plus mask, or an individual IP address, or a range of IP addresses.

            For IPv6, the IP address could be an IP prefix, or a range of IP prefixes.'
          type: array
          minItems: 0
          items:
            type: string
        srcPort:
          description: A port or a range of ports.
          type: array
          minItems: 0
          items:
            type: string
        dstPort:
          description: A port or a range of ports.
          type: array
          minItems: 0
          items:
            type: string
        protocol:
          description: Specify the protocol of the traffic filter.
          type: array
          minItems: 0
          items:
            type: string
        tag:
          description: Used for tag based traffic rule.
          type: array
          minItems: 0
          items:
            type: string
        uri:
          description: An URI label, in application layer, i.e. in HTTP message, is used to filter the traffic.
          type: array
          minItems: 0
          items:
            type: string
        packetLabel:
          description: A customized packet label in network layer, as defined by the owner of the MEC platform, is used to filter the traffic.
          type: array
          minItems: 0
          items:
            type: string
        srcTunnelAddress:
          description: Used for GTP tunnel based traffic rule.
          type: array
          minItems: 0
          items:
            type: string
        tgtTunnelAddress:
          description: Used for GTP tunnel based traffic rule.
          type: array
          minItems: 0
          items:
            type: string
        srcTunnelPort:
          description: Used for GTP tunnel based traffic rule.
          type: array
          minItems: 0
          items:
            type: string
        dstTunnelPort:
          description: Used for GTP tunnel based traffic rule.
          type: array
          minItems: 0
          items:
            type: string
        qCI:
          description: Used to match all packets that have the same QCI.
          type: integer
        dSCP:
          description: Used to match all IPv4 packets that have the same DSCP.
          type: integer
        tC:
          description: Used to match all IPv6 packets that have the same TC.
          type: integer
    InterfaceDescriptor:
      x-etsi-ref: 6.2.1.11
      type: object
      properties:
        interfaceType:
          type: string
          description: 'Type of interface: TUNNEL, MAC, IP, etc.'
          enum:
          - SEE_DESCRIPTION
        tunnelInfo:
          description: Included only if the destination address type is tunnel.
          $ref: '#/components/schemas/TunnelInfo'
        srcMACAddress:
          description: If the interface type is MAC, the source address identifies the MAC address of the interface.
          type: string
        dstMACAddress:
          description: If the interface type is MAC, the destination address identifies the MAC address of the destination. Only used for dstInterface.
          type: string
        dstIPAddress:
          description: If the interface type is IP, the destination address identifies the IP address of the destination. Only used for dstInterface.
          type: string
      required:
      - interfaceType
    TunnelInfo:
      x-etsi-ref: 6.2.1.12
      type: object
      properties:
        tunnelType:
          type: string
          description: 'Type of tunnel: GTP-U, GRE, etc.'
          enum:
          - SEE_DESCRIPTION
        tunnelDstAddress:
          description: Destination address of the tunnel.
          type: string
        tunnelSrcAddress:
          description: Source address of the tunnel.
          type: string
        tunnelSpecificData:
          description: Parameters specific to the tunnel.
          type: object
      required:
      - tunnelType
      - tunnelDstAddress
      - tunnelSrcAddress
    TransportType:
      type: string
      description: Type of the transport. The attribute shall be set to "MB_TOPIC_BASED."
    EndPointInfo:
      x-etsi-ref: 8.1.5.3
      type: object
      properties:
        uris:
          description: Entry point information of the service as string, formatted according to URI syntax (see IETF RFC 3986 [8]). Shall be used for REST APIs. See note.
          type: array
          minItems: 0
          items:
            type: string
        fqdn:
          description: Fully Qualified Domain Name of the service. See note.
          type: array
          minItems: 0
          items:
            type: string
        addresses:
          type: array
          items:
            $ref: '#/components/schemas/Addresses'
        alternative:
          description: "Entry point information of the service in a format defined by an implementation, or in an external specification. See\_note."
          type: object
      description: "|-\n  NOTE:\tExactly one of \"uris\", \"fqdn\", \"addresses\" or \"alternative\" shall be present."
    Addresses:
      description: Entry point information of the service as one or more pairs of IP address and port. See note.
      type: object
      minItems: 0
      properties:
        host:
          description: Host portion of the address.
          type: string
        port:
          description: Port portion of the address.
          type: integer
      required:
      - host
      - port
    SecurityInfo:
      x-etsi-ref: 8.1.5.4
      type: object
      properties:
        oAuth2Info:
          $ref: '#/components/schemas/OAuth2Info'
        (extensions):
          description: 'Extensions for alternative transport mechanisms. These extensions depend on the actual transport, and are out of scope of the present document.

            For instance, such extensions may be used to signal the necessary parameters for the client to use TLSbased authorization defined for alternative transports (see ETSI GS MEC 009 [5] for more information).'
          type: array
          minItems: 0
          items:
            $ref: '#/components/schemas/Not_specified'
    OAuth2Info:
      description: Parameters related to use of OAuth 2.0. Shall be present in case OAuth 2.0 (see IETF RFC 6749 [13]) is supported to secure the provision of the service over the transport.
      type: object
      properties:
        grantTypes:
          type: array
          description: "List of supported OAuth 2.0 grant types.\nEach entry shall be one of the following permitted values:\nOAUTH2_AUTHORIZATION_CODE (Authorization code grant type)\nOAUTH2_IMPLICIT_GRANT\n\t(Implicit grant type)\nOAUTH2_RESOURCE_OWNER\n\t(Resource owner password credentials grant type)\nOAUTH2_CLIENT_CREDENTIALS\n\t(Client credentials grant type)\nOnly the value \"OAUTH2_CLIENT_CREDENTIALS\" is supported in the present document. "
          minItems: 1
          maxItems: 4
          items:
            enum:
            - SEE_DESCRIPTION
            type: string
        tokenEndpoint:
          description: The token endpoint. Shall be present unless the grant type is OAUTH2_IMPLICIT_GRANT.
          type: string
          format: uri
      required:
      - grantTypes
    TransportInfo:
      x-etsi-ref: 8.1.2.3
      type: object
      properties:
        id:
          description: The identifier of this transport.
          type: string
        name:
          description: The name of this transport.
          type: string
        description:
          description: Human-readable description of this transport.
          type: string
        type:
          description: Type of the transport.
          $ref: '#/components/schemas/TransportType'
          type: object
        protocol:
          description: The name of the protocol used. Shall be set to "HTTP" for a REST API.
          type: string
        version:
          description: The version of the protocol used.
          type: string
        endpoint:
          description: Information about the endpoint to access the transport.
          $ref: '#/components/schemas/EndPointInfo'
          type: object
        security:
          description: Information about the security used by the transport.
          $ref: '#/components/schemas/SecurityInfo'
          type: object
        implSpecificInfo:
          description: Additional implementation specific details of the transport.
          type: object
      required:
      - id
      - name
      - type
      - protocol
      - version
      - endpoint
      - security
info:
  contact:
    url: https://forge.etsi.org/rep/mec/gs033-iot-api