Title

  Test IKEv2.EN.R.1.2.3.1: Receiving Delete Payload for Multiple CHILD_SAs
  Part A: (BASIC)


Purpose

  To verify an IKEv2 device transmits a Delete Payload, when CHILD_SAs are deleted.


References

  * [RFC 4306] - Sections 2.4 and 3.11


Test Setup

  * Network Topology
      Connect the devices according to the Common Topology.
  * Configuration
      In each part, configure the devices according to the Common Configuration.
  * Pre-Sequence and Cleanup Sequence
      IKEv2 on the NUT is disabled after each part.


Procedure

   NUT                  TN1
(End-Node)           (End-Node)
    |                    |
    |<-------------------| IKE_SA_INIT request (HDR, SAi1, KEi, Ni)
    |                    | (Packet #1)
    |------------------->| IKE_SA_INIT response (HDR, SAr1, KEr, Nr)
    |                    | (Judgement #1)
    |                    |
    |<-------------------| IKE_AUTH request (HDR, SK {IDi, AUTH, N, SAi2, TSi, TSr})
    |                    | (Packet #2)
    |------------------->| IKE_AUTH response (HDR, SK {IDr, AUTH, N, SAr2, TSi, TSr})
    |                    | (Judgement #2)
    |                    |
    |<-------------------| CREATE_CHILD_SA request (HDR, SK {N, SA, Ni, TSi, TSr})
    |                    | (Packet #3)
    |------------------->| CREATE_CHILD_SA response (HDR, SK {N, SA, Nr, TSi, TSr})
    |                    | (Judgement #3)
    |                    |
    |<-------------------| INFORMATIONAL request (HDR, SK {D})
    |                    | (Packet #4)
    |------------------->| INFORMATIONAL response (HDR, SK {D})
    |                    | (Judgement #4)
    |                    |
    V                    V

N: REKEY_SA N+: USE_TRANSPORT_MODE
Packet #1 See Common Packet #1
Packet #2 See below
Packet #3 See below
Packet #4 See below

* Packet #2: IKE_AUTH request
IPv6 Header Same as the Common Packet #3
UDP Header Same as the Common Packet #3
IKEv2 Header Same as the Common Packet #3
E Payload Same as the Common Packet #3
IDi Payload Same as the Common Packet #3
AUTH Payload Same as the Common Packet #3
N Payload Same as the Common Packet #3
SA Payload Same as the common packet #3
TSi Payload Other fields are same as the Common Packet #3
Traffic Selectors See below
TSr Payload Other fields are same as the Common Packet #3
Traffic Selectors See below
TSi Payload Traffic Selector TS Type 8 (IPV6_ADDR_RANGE)
IP Protocol ID 6 (TCP)
Selector Length 40
Start Port 0
End Port 65535
Starting Address TN1's Global Address on Link X
Ending Address TN1's Global Address on Link X
TSr Payload Traffic Selector TS Type 8 (IPV6_ADDR_RANGE)
IP Protocol ID 6 (TCP)
Selector Length 40
Start Port 0
End Port 65535
Starting Address NUT's Global Address on Link A
Ending Address NUT's Global Address on Link A

* Packet #3: CREATE_CHILD_SA request
IPv6 Header Same as the Common Packet #7
UDP Header Same as the Common Packet #7
IKEv2 Header Same as the Common Packet #7
E Payload Same as the Common Packet #7
N Payload Same as the Common Packet #7
SA Payload Same as the Common Packet #7
Ni, Nr Payload Same as the Common Packet #7
TSi Payload Other fields are same as the Common Packet #7
Traffic Selectors See below
TSr Payload Other fields are same as the Common Packet #7
Traffic Selectors See below
TSi Payload Traffic Selector TS Type 8 (IPV6_ADDR_RANGE)
IP Protocol ID 58 (ICMPv6)
Selector Length 40
Start Port 0
End Port 65535
Starting Address TN1's Global Address on Link X
Ending Address TN1's Global Address on Link X
TSr Payload Traffic Selector TS Type 8 (IPV6_ADDR_RANGE)
IP Protocol ID 58 (ICMPv6)
Selector Length 40
Start Port 0
End Port 65535
Starting Address NUT's Global Address on Link A
Ending Address NUT's Global Address on Link A

Packet #4: INFORMATIONAL request
IPv6 Header Same as the Common Packet #17
UDP Header Same as the Common Packet #17
IKEv2 Header Same as the Common Packet #17
E Payload Other fields are same as the Common Packet #17
Next Payload 42 (Delete)
Delete Payload Next Payload 0 (last)
Critical 0
Reserved 0
Payload Length 16
Procotol ID 3 (ESP)
SPI Size 4
# of SPIs 2
Security Parameter Index(es) (SPI) SPI negotiated by Initial Exchange
SPI negotiated by CREATE_CHILD_SA exchange
  Part A: (BASIC)
     1. TN starts to negotiate with NUT by sending IKE_SA_INIT request.
     2. Observe the messages transmitted on Link A.
     3. After reception of IKE_SA_INIT response from the NUT, TN transmits an IKE_AUTH
        request to the NUT.
     4. Observe the messages transmitted on Link A.
     5. TN1 transmits a CREATE_CHILD_SA request to establish a new CHILD_SA to the NUT.
     6. Observe the messages transmitted on Link A.
     7. TN1 transmits an INFORMATIONAL request with a Delete payload including the first
        negotiated CHILD_SA's inbound SPI and the second negotiated CHILD_SA's inbound SPI.
     8. Observe the messages transmitted on Link A.


Observable Result

  Part A
       Step 2: Judgment #1
       The NUT transmits an IKE_SA_INIT response including "ENCR_3DES",
       "PRF_HMAC_SHA1", "AUTH_HMAC_SHA1_96" and "D-H group 2" as accepted
       algorithms.
       Step 4: Judgment #2
       The NUT transmits an IKE_AUTH response including "ENCR_3DES",
       "AUTH_HMAC_SHA1_96" and "No Extended Sequence Numbers" as accepted algorithms.
       Step 6: Judgment #3
       The NUT transmits a CREATE_CHILD_SA response including "ENCR_3DES",
       "AUTH_HMAC_SHA1_96" and "No Extended Sequence Numbers" as accepted algorithms.
       Step 8: Judgment #4
       The NUT transmits an INFORMATIONAL response with delete payload for SPIs which are
       negotiated by Initial Exchange and CREATE_CHILD_SA exchange.


Possible Problems

  * INFORMATIONAL response from NUT may not contain Delete Payload by
    implementation policy. This behavior is defined at section 1.4 in RFC 4306 as an
    exception.