Uploaded image for project: 'Near Realtime RAN Intelligent Controller'
  1. Near Realtime RAN Intelligent Controller
  2. RIC-468

Integartion with xApp: E2M publish SDL event in case Connection Status is changed

XMLWordPrintable

    • Icon: Story Story
    • Resolution: Done
    • Icon: Medium Medium
    • Cherry-R5
    • None
    • e2mgr
    • None

      Background and motivation

      We need to publish event when the RAN is changing its Connection Status.

      Most of our clients need "binary" notification - Moving from connected to Non-Connected (Either Disconnect or Shutdown) and vice averse. They don't care about moving inside the the Non-connected group.

      Which SDL API to use (SetAndPublish or only publish) - Dev territory.

      Please look on the https://gerrit.o-ran-sc.org/r/gitweb?p=ric-plt/sdlgo.git;a=blob;f=doc.go;h=2dbff8497c2cb1beae6c0ae959589a08a94241ca;hb=HEAD Wiki

      also read the attached mail on the "Generate Redis SL Notification" subject

      Consider the following, if sometime in the future  there will be a client which will need also the inside Non-Connected state changing:

      • Today we will “publish” a channel (is it the equivalent to “Topic” in Kafka?) which is “binary” – Connected / Not connected.
      • If, in the future inside the Non-Connected, there will be a client that interest in this state change, when we will move from Non-Connected status one (Like Disconnect) to Non-Connected status two (like Shut-Down) – we will publish different channel “Topic”). So the 2 “channel” will give the solution of ALL Connection Status Changing. So this future client will subscribe to these 2 “channel”.

      If we can do it - wonderful. Read also my question ("The Change State Clients what they expect"), clients prefers the Binary, my suggestion and Thoralf response. please understand the Publish and understand if his saying that 

      If not - we will publish event on every changing in Connection State (but at least the old state should be different from the old one).

      Note: considered the same logic in calling the Alarm Library.

      Requirements

      Turn the today Set to SetAndPublish:

      • New RAN is sending us Setup (either we succeed with Setup Response or we fail with Setup Response
      • Existing RAN in any Non-Connected state received Setup which succeed.
      • Lost Connection to Connected RAN
      • Red Button to Connected RAN
      • KA identifies E2T instance isn't answering, and it moves RAN from Connected to Disconnect
      • E2T Restart and it moves RAN from Connected to Disconnect

      The other scenarios will continue with Set, here is some examples (there are more):

      • Lost Connection to RAN in Shutting Down
      • Red Button to disconnected or shut-down already RAN
      •  ....

      Acceptance

      1. The best is to write a Test Subscriber. but if it it difficult - test it through teh SDL calling.
      2. Simulate Setup for new RAN. See Publish is called
      3. Simulate now Lost connection.  See Publish is called
      4. Simulate now Red button.  See Publish is NOT called
      5. Simulate now Setup for RAN. See Publish is called
      6. Simulate now Setup for RAN. See Publish is NOT called
      7. Simulate now Red button.  Moving to Shutting Down causes Publish. During the Red Button we will receive Lost connection.  See Publish is NOT called. See Publish is NOT called when we moved it to Shut Down.
      8. Simulate now Setup for RAN. See Publish is called

       

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

            Unassigned Unassigned
            ss412g Shuky Har-Noy
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved:

                Estimated:
                Original Estimate - 2 days
                2d
                Remaining:
                Remaining Estimate - 2 days
                2d
                Logged:
                Time Spent - Not Specified
                Not Specified