ji3g4al
  • NEW!
    NEW!  Connect Ideas Across Notes
    Save time and share insights. With Paragraph Citation, you can quote others’ work with source info built in. If someone cites your note, you’ll see a card showing where it’s used—bringing notes closer together.
    Got it
      • Create new note
      • Create a note from template
        • Sharing URL Link copied
        • /edit
        • View mode
          • Edit mode
          • View mode
          • Book mode
          • Slide mode
          Edit mode View mode Book mode Slide mode
        • Customize slides
        • Note Permission
        • Read
          • Only me
          • Signed-in users
          • Everyone
          Only me Signed-in users Everyone
        • Write
          • Only me
          • Signed-in users
          • Everyone
          Only me Signed-in users Everyone
        • Engagement control Commenting, Suggest edit, Emoji Reply
      • Invite by email
        Invitee

        This note has no invitees

      • Publish Note

        Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note No publishing access yet

        Your note will be visible on your profile and discoverable by anyone.
        Your note is now live.
        This note is visible on your profile and discoverable online.
        Everyone on the web can find and read all notes of this public team.

        Your account was recently created. Publishing will be available soon, allowing you to share notes on your public page and in search results.

        Your team account was recently created. Publishing will be available soon, allowing you to share notes on your public page and in search results.

        Explore these features while you wait
        Complete general settings
        Bookmark and like published notes
        Write a few more notes
        Complete general settings
        Write a few more notes
        See published notes
        Unpublish note
        Please check the box to agree to the Community Guidelines.
        View profile
      • Commenting
        Permission
        Disabled Forbidden Owners Signed-in users Everyone
      • Enable
      • Permission
        • Forbidden
        • Owners
        • Signed-in users
        • Everyone
      • Suggest edit
        Permission
        Disabled Forbidden Owners Signed-in users Everyone
      • Enable
      • Permission
        • Forbidden
        • Owners
        • Signed-in users
      • Emoji Reply
      • Enable
      • Versions and GitHub Sync
      • Note settings
      • Note Insights New
      • Engagement control
      • Make a copy
      • Transfer ownership
      • Delete this note
      • Save as template
      • Insert from template
      • Import from
        • Dropbox
        • Google Drive
        • Gist
        • Clipboard
      • Export to
        • Dropbox
        • Google Drive
        • Gist
      • Download
        • Markdown
        • HTML
        • Raw HTML
    Menu Note settings Note Insights Versions and GitHub Sync Sharing URL Create Help
    Create Create new note Create a note from template
    Menu
    Options
    Engagement control Make a copy Transfer ownership Delete this note
    Import from
    Dropbox Google Drive Gist Clipboard
    Export to
    Dropbox Google Drive Gist
    Download
    Markdown HTML Raw HTML
    Back
    Sharing URL Link copied
    /edit
    View mode
    • Edit mode
    • View mode
    • Book mode
    • Slide mode
    Edit mode View mode Book mode Slide mode
    Customize slides
    Note Permission
    Read
    Only me
    • Only me
    • Signed-in users
    • Everyone
    Only me Signed-in users Everyone
    Write
    Only me
    • Only me
    • Signed-in users
    • Everyone
    Only me Signed-in users Everyone
    Engagement control Commenting, Suggest edit, Emoji Reply
  • Invite by email
    Invitee

    This note has no invitees

  • Publish Note

    Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note No publishing access yet

    Your note will be visible on your profile and discoverable by anyone.
    Your note is now live.
    This note is visible on your profile and discoverable online.
    Everyone on the web can find and read all notes of this public team.

    Your account was recently created. Publishing will be available soon, allowing you to share notes on your public page and in search results.

    Your team account was recently created. Publishing will be available soon, allowing you to share notes on your public page and in search results.

    Explore these features while you wait
    Complete general settings
    Bookmark and like published notes
    Write a few more notes
    Complete general settings
    Write a few more notes
    See published notes
    Unpublish note
    Please check the box to agree to the Community Guidelines.
    View profile
    Engagement control
    Commenting
    Permission
    Disabled Forbidden Owners Signed-in users Everyone
    Enable
    Permission
    • Forbidden
    • Owners
    • Signed-in users
    • Everyone
    Suggest edit
    Permission
    Disabled Forbidden Owners Signed-in users Everyone
    Enable
    Permission
    • Forbidden
    • Owners
    • Signed-in users
    Emoji Reply
    Enable
    Import from Dropbox Google Drive Gist Clipboard
       Owned this note    Owned this note      
    Published Linked with GitHub
    2
    • Any changes
      Be notified of any changes
    • Mention me
      Be notified of mention me
    • Unsubscribe
    # 行動通訊網路 ###### tags: `資工系課程` `MCN` ## CH1 ### The Telephone Network ![](https://i.imgur.com/COwvbxi.png) control signal(control layer),資料量較小;user traffic data(用戶通話資料 transport layer),資料量較大。 兩者在不同layer的原因:control signal比較重要,需要容錯率高的管線,若兩個合在一起成本會很高,因此兩個會分開。 End office switch: 有多個user共用一個switch,從通話端送封包時要送到的address會寫到end office的switch - 一般的通話是使用ISUP Messages,透過SS7網路的信號轉運點(Signal Transfer Point;STP),在發話端交換機(Originating Switch)與受話端交換機(Terminating Switch)之間傳送 - 需要智慧型網路服務(IN Services)時,則要發送SS7 TCAP信令,經由SS7網路轉送至提供該服務的服務控制點(Service Control Point;SCP),若此服務包含語音播放或是互動語音回應,SCP就會要求智慧型設備(Intelligent Peripheral;IP)播放語音給發話端,同時偵測發話端的按鍵,並將按鍵結果之DTMF回傳給SCP #### 5 Basic Components in Intelligent Networks整理 - SSP/Service Switching Point:交換機switching, signaling, routing - STP/Service Transfer Point: 主要負責routing路徑決定,signaling, routing - SCP/Service Control Point: service logic execution - SDP/Service Data Point: subscriber data storage, access - IP/Intelligent Peripheral: resources such as customized voice announcement, voice recognition, DTMF digit collection(收集user按鍵) ### Telephony Switches 交換機分級 ![](https://i.imgur.com/NjL9cEW.png) class 5:連接到家中電話,都沒有連到其他用戶 數字越小容錯能力要越高,因為是1連2 2連3...,如果1斷其他也都斷了 ### Signaling Systems 早期的系統相對簡略,所以不需要將control signal及user traffic分開,因此為in-band analog(類比) systems 現代的則是分開的channel - SS7 (Signaling System Number 7): Physical out-of-band signaling - ISDN (integrated Services Digital Network): Physical in-band/ Logical out-of-band,B channel - user traffic; D channel - signaling out of band: control signal跟user traffic分開在不同線路 ![](https://i.imgur.com/OrLXYmh.png) 不過ISDN用時間切割的方式,每個時段傳不同channel的資料,所以邏輯上是out-of-band,但實體上還是同一條線路依照時間分割,不分開是因為沒有效益 ![](https://i.imgur.com/4VssIiY.png) SS7因為有獨立線路,所以可以提供更多服務,像是Caller ID, toll-free calling, call screening,通常是大型企業用 ISDN則是企業用,可以同時很多通電話進行通話 analog則是家庭用戶用 補充:PBX(Private Branch eXchange)專用交換機,公司行號會購買的,因為內部通話不用錢。 ### SSP(Service Switching Point) The Switch System in Telephone Network - 確定呼叫目的地(可能由SCP建議) - 設置通話 - 根據IN呼叫模型處理來電 - 如有必要,通過SS7網絡向SCP創建查詢消息 ### STP(Signal Transfer Point) Serve as Router in SS7 Network - Global Title Translation: 一種Procedure:透過user的按鍵決定封包傳送到的地方,像是每個地區的編號不同,或是打0800會接TCAP Messages到service control signal(SCP) - 不知道SCP加值服務的address在哪,會把打的號碼送到STP由它來找 - 打比較新的號碼時,switch會找不到destination,所以會在封包中把號碼寫進去,然後由STP使用global title translation來找,並把號碼改成destination switch的address ### SCP(Service Control Point) 包含additional logic並可用於提供進階服務的網絡實體,SCP is a computer with real-time database - SCP基於可用的數據和服務邏輯,將告訴交換機需要採取哪些操作。像是轉接電話服務、0800電話 - database中儲存IN用戶的routing資訊 - 通過在SCP上執行不同的服務邏輯來提供不同種類的IN服務 ### Special IN Components SMS/Service Management Syst: 會負責服務更新(對SCP) SCE/Service Creation Env.: Provide tools to assist in creating services in SCP NAP/Network Access Point: No IN function, just for access SS7 network ![](https://i.imgur.com/RJvjHdH.png) ### SS7 Protocol Suite Data、network都是傳輸的過程,不會看到傳送的內容是什麼 DataLink: 確保訊息在鏈路上實現精確的端到端傳送 TCAP下層一定是SCCP,但ISUP底下有可能沒有SCCP也有可能有(在SSP確定地址的話,就不會用到sccp) ![](https://i.imgur.com/jrUKPYV.png) #### MTP Levels 1 & 2 Level 1: 訂定類比轉數位的方式 Level 2: 負責處理一個 link 中如何傳送到網路中的下一個節點,監測兩點之間的傳輸錯誤(router to router) Level 3: 處理整個 signaling 網路的 routing 問題,也就透過先前提到的 STP 來當做中繼點(intermediate nodes)來傳送封包。 #### TUP and ISUP Telephone User Part (TUP): - Support Basic Call Set-up and Tear Down - TUP Handles Analog Circuits Only - Replaced by ISUP Gradually ISDN User Part (ISUP): - 設置、管理和釋放在終接線路交換機之間傳送語音和數據的中繼線 - 用於 ISDN 和非 ISDN 呼叫 <font color="red"><font size=5>必考</font></font> #### ISUP 用在交換機之間建立和斷開電話呼叫的協議 **Initial Address Message (IAM):** 一開始找對方的訊息 **Address Complete Message (ACM):** 找對方結束的訊息(找到了) **Answer Message (ANM):** 找到對方,對方電話接起來了 **Release Message (REL):** 有一方電話掛斷了 **Release Complete Message (RLC):** 大家都掛電話了 ![](https://i.imgur.com/GkYGQGS.png) #### Call Establishment Originating SSP:發起端的SSP Alerting: 等待接起 ![](https://i.imgur.com/YiCvcSj.png) #### Call Release 馬上回傳release的原因是,不能再收錢了,交換機會馬上把資源放掉,不用等到另一端的訊息。 但如果是接電話端掛斷電話,就不會馬上放掉,還是有calling端付錢。 ![](https://i.imgur.com/kyEHpZc.png) #### SCCP(Signaling Connection Control Part) - Used as the transport layer for TCAP-based services - Global title translation (GTT) capabilities,就是STP的那個,決定封包的指定地址。當SSP不確定SCP(加值服務)的地址時,直接把號碼寫在SCCP的欄位,STP就查的到地址,再把SCCP的欄位寫入地址。 但如果確定地址的話,就不會用到sccp,就是通訊協定那張圖中的ISUP下層不用SCCP #### TCAP, MAP and INAP - TCAP (Transaction Capabilities Applications Part): Supporting the exchange of non-circuit related information between signaling points,跟SCP之間的連線,不是circuit表示不用一直保持連線,因為SCP是QUERY response 不用建立連線比較節省資源 - INAP (IN Application Part): 智慧型網路的相關資訊 - MAP (Mobile Application Part): 目前手機所在的位置,即使手機位置一直跑,還是可以找的到 ### IN (Intelligent Networks) IN Call Model有兩種不同組織下訂定的call model: Bellcore AIN Call Model、ITU-T IN Call Model(以下用AIN跟IN區分) - 沒有特定服務被稱為IN service,只能說是IN平台上提供的 - 有標準的程序跟通訊協定 ### IN Service Examples #### 範例一 ![](https://i.imgur.com/W5OhWjq.png) #### 範例二 勿擾模式: 過濾電話服務,啟用後特定的時候陌生電話不會打進來 ![](https://i.imgur.com/L6848SC.png) 左圖為啟用服務/右圖非陌生電話可打進來 ![](https://i.imgur.com/kxqidSH.png) 此為被過濾的陌生電話,轉接到語音信箱 ### The ITU-T IN Model 由三個主要元素組成 - Basic call processing: Conventional operation of call setup & disconnect,SSP負責的部分 - Hooks: the interface between BCP & IN services modules,SSP跟SCP之間溝通的介面 - IN service logic: Software modules to provide the IN services ### Capability Sets of IN <font color="red"><font size=4>可能會考TYPE A跟TYPE B服務的例子</font></font> ![](https://i.imgur.com/Ub6Sz8n.png) CS-X為IN的不同能力集 TYPE B:多方通話 TYPE A:像是0800 之類的 ### Bellcore AIN Call Model ![](https://i.imgur.com/Nte4RRa.png) PIC就是state,是由交換機去偵測用戶的state DP: - BCP 暫停的地方,並將消息發送到另一個節點。 - DPs與triggers有關聯 - tigger列出一組標準和接收消息的節點地址。 Originating:撥號、Dialing:響鈴、on-hook:電話掛著 #### Detection Points & Triggers DP 可以由一對多的操作及其關聯的triggers組成。 如果滿足,則暫停呼叫處理,並向相關接收節點發送消息。 ![](https://i.imgur.com/uS6mw9X.png) ### AIN OCM & TCM AIN Call Model分成兩個部分 - OCM(Originating Call Model): 就是處理整個打電話端的確認及驗證,會控制通話到通話結束,因為交換機要負責計費。 - TCM (Terminating Call Model): 接電話端的,要看接電話端能不能接電話,有沒有在繳電話費,以及負責接電話 一定是OCM先跑才是TCM端跑 ### Example of AIN Operations ![](https://i.imgur.com/M0UPnDz.png) 1. SSP收到資訊(用戶撥號) 2. 執行 PIC,直到信息分析的 DP 到達 3. 調用trigger邏輯 4. 分析各種觸發條件,滿足觸發條件3。 ![](https://i.imgur.com/v1r2MO0.png) 5. SSP 組裝所需的訊息以構建查詢消息 6. 該消息被編碼為 SS7 TCAP 消息,並發送到相關SCP 7. 先暫停call processing,要等到SCP處理完加值服務 ![](https://i.imgur.com/gKRQFjT.png) 8. SSP對TCAP訊息解碼 9. 執行特定的軟體模組來服務查詢 10. 模組生成參數創造出response 11. 傳送TCAP訊息給SSP ![](https://i.imgur.com/le9IKjC.png) 12. 解碼訊息,該訊息指示 SSP 應該在哪裡開始觸發call processing繼續處理。 13. 可能會在不同PIC恢復processing,像是如果是請scp索引最近的連鎖商家,就會在不同地方。也有可能用完加值服務查詢之類的就會結束。 ### OCM of Bellcore AIN ![](https://i.imgur.com/Vm83D5V.png) NULL: 線路/中繼接口空閒(不存在呼叫),交換機提供監看。 Authorizing org attempt: switch驗證用戶播打電話的權限 Collecting info: switch收集用戶初始訊息 Analyzing info: 透過使用者撥出的號碼分析是否觸發特殊scp服務,或是區碼之類的 Selecting route: switch選擇發出的route Authorizing call setup: 檢查收費限制 Call processing: 通知終止 ![](https://i.imgur.com/quOBQA5.png) Origination attempt: 撥號嘗試,用於用戶一拿起話筒就向 SCP 發送消息的情況(用於熱線類型服務)。 Info collected: 用於將消息發送到 SCP 的情況,除非撥打escape code。 Info analyzed: 用於在向 SCP 發送消息之前必須確定所撥數字類型的情況 Network busy: 用於向 SCP 發送請求溢出路由的消息(其中SSP已知的所有路由都忙) ### TCM of Bellcore AIN ![](https://i.imgur.com/tYHIYeL.png) NULL: 線路/中繼接口空閒(不存在呼叫),交換機提供監看。 Authorizing termination: switch會看用戶有沒有繳錢,才能決定要不要讓這通電話打通 Hunting facility: 確定呼叫終止接入的忙/閒狀態。 Termination attempt: 用於在 SSP 嘗試終止呼叫之前向 SCP 發送消息的情況。 ### Example of Bellcore OCM ![](https://i.imgur.com/i4CQF5w.png) ![](https://i.imgur.com/Mq4CCuw.png) Info analyzed:發現調用者訂閱了 TDP 的觸發器。 將撥出的數字與訂閱用戶AIN 觸發器中的條件進行比較。 ### Example of Bellcore TCM ![](https://i.imgur.com/Awk4Ido.png) SCP會檢查這個電話是不是在免打擾情況下可以接的電話 ![](https://i.imgur.com/yBrav5s.png) 如果撥打者不是在免打擾情況下可以接的電話,SCP會發送send_to_resource msg指示 SSP 向呼叫者播放通知並收集其他數字的消息 SSP 將呼叫連接到負責播放此公告並收集收集附加數字的 IP。 接下來,IP 向 SSP 發送報告。 SSP 在 resource_clear msg 中將附加數字發送到 SCP。 ### Basic Call State Model ![](https://i.imgur.com/28HjBpO.png) 跟前面的長相不太一樣,是DP在PIC上面,但功能其實沒什麼差 armed/disarmed: 就是指DP可以打開或是關閉,不讓DP去比對資訊 其實前面的bellcore也有這樣的功能 #### DP Arming Mechanism Two kinds of service requested: - Trigger detection points (TDPs) – Static: 根據用戶有買的加值服務,而用到的Detection points,有買才會叫dp比對號碼 - Event detection points (EDPs) – Dynamic: 針對加值服務的執行而被需要設定的條件 Two kinds of actions: - Request: 需要等到回應才會繼續執行 - Notification: Continues without waiting for a response DP Action: TDP-R, TDP-N, EDP-R, EDP-N #### Detection Point Processing ![](https://i.imgur.com/PR0fj5p.png) ![](https://i.imgur.com/84k2fWI.png) Arm EDP-R: 因為前面的加值服務的執行需要,而需要額外的dp去進行比對 ### ITU-T CS-1 BCSM ![](https://i.imgur.com/wEmxinh.png) ![](https://i.imgur.com/ndVw0zJ.png) ### CS-1 Limitations - CS1假設只有一間電信業者,也沒有網路互通服務-No internetworking service - 沒有多方通訊也沒有多媒體通訊 - CS-1 只有有限的機動性功能 ### CS-2: CS-1 extension - Handles call more than two parties - 可以做與通話無關的服務,像是發簡訊 ### CS-2 BCSM ![](https://i.imgur.com/YXLMZzl.png) ![](https://i.imgur.com/RlZeHcq.png) 有Suspended,還有一堆授權東西 ### CS-2 Basic CU State Model Basic Call-Unrelated State Model,像是寄簡訊 ![](https://i.imgur.com/yMjYAbb.png) ## CH2 ### Three Types of Mobility **Terminal Mobility** The terminal is connected to the network via radio interface and move around freely,舉例來說使用者走到不同地方可以接到不同的基地台 **User Mobility** The user can move from one terminal to another and register for incoming and outgoing calls to be made to and from this terminal,SIM卡可以從一台手機換到另一台手機中 **Service Mobility** The portfolio of services that a user has subscribed to follows the user as he/she roams to different networks.在台灣可以使用電話服務,跑到國外也可以用電話服務 ### Cellular Networks 一個大區域需要使用很多個小的radio cell(一個基地台範圍) small radio cell好處:基地台越小代表手機離基地台距離越短,需要傳輸的距離越短,耗費的能量也小、還有越小需要負責的手機數量也比較少,可以讓平均手機傳輸速率變高 3G cellular networks (the beginning of 2000s) - Multimedia communications and mobile internet 2.5G cellular networks (between 2G and 3G) - Use the existing frequency bands and radio interface of 2G networks - But offer 3G capacity and services ### GSM 2G網路 #### GSM Architecture ![](https://i.imgur.com/svEDh9d.png) MS:mobile station,2G手機才會這樣叫 MSC就像SSP的感覺,可能會有很多個,a telephony switch HLR會記錄有哪些用戶、用戶買了哪些服務、所有用戶的狀態、身分 VLR什麼手機造訪到MS底下,就會有紀錄、手機在哪個區域 GMSC連到外部網路的節點 BSS: base station subsystem,Manages the radio resources,又分為BSC and BTS #### Mobility Management 為了有Mobility的功能: GSM networks were divided into location areas,每個location area都會有unique identifier (LAI),且包含多個radio cells,在同個Location area下的基地台的LAI都相同。 每支手機都會監聽這些基地台的頻道,基地台會廣播他的LAI,當監聽的LAI改變,就代表手機換到另一個Location area,**做location update**,如果手機還在同一個MSC and VLR下此時會與VLR跟MSC通報,紀錄手機移動;如果在不同MSC and VLR下,則會跟HLR、MSC and VLR一併更新,且HLR還會跟舊的MSC and VLR講原先的手機已經離開了 #### 外部打電話流程 第一個一定先到GMSC,是對外窗口,且有連線到HLR的權力,並存取資料。用HLR去看要找的手機在哪個MSC底下,MSC就會去查VLR,看是在哪個Location area,對該區域的基地台發出要求,基地台用特定頻率廣播要找誰(paging),被廣播的手機就可以跟最近的基地台建立連線,VLR就可以記錄更仔細的手機在哪個基地台連線。 #### GSM Handover / Handoff Handover/Handoff:因為用戶移動,通話當中從一個基地台換到另一個基地台,是透過mobile terminals監聽尋找訊號比較強、穩定的基地台建立連線,此時VLR也會更新。 **平常沒在打電話的時候VLR不會記錄得太仔細,只會記錄在哪個Location area而已,在離開location area才會做location update** ### GPRS(General Packet Radio Service) 2.5G網路 用既有的GSM的網路做行動上網,可看成GSM的架構做延伸,但傳輸跟下載速率很慢 ### GPRS Architecture ![](https://i.imgur.com/GO2LkKo.png) 多了兩個節點(SGSN、GGSN)跟一個模組(PCU) SGSN:類似於MSC function in GSM,但是是一個router不是switch,會負責location updates and handovers(MSC+VLR的感覺);Several BSC can be connected to one SGSN GGSN:Acts as the gateway to external packet networks;Several SGSN can be connected to one GGSN,還會管理ip節點 擁有該業者的所有IP address、當用戶上線時會分配ip address給用戶的手機,還會追蹤目前用戶連到哪個SGSN 大部分情況下每個用戶上線時會拿到不同的IP address 如果有外部的封包要送過來,會負責route到正確的SGSN,用**IP Tunneling** Tunneling:因為IP Tunneling是GGSN負責管理,所以會把封包傳到GGSN,GGSN透過Table查詢該address在哪個SGSN底下,送過去不會以原有的IP address送,因為IP address會送回GGSN(IP address實際上是GGSN持有的),所以會把SGSN的Address包在封包外面,加上IP header,之後才透過router送到SGSN那,SGSN再把原本外面封裝的header拿掉,看原本封包欄位用table找該ip address,最後才做paging ![](https://i.imgur.com/g676YJr.png) ![](https://i.imgur.com/4fbBA9v.png) #### Mobility Management **GPRS network is divided into routing areas** 手機開機先選擇一個訊號強的基地台(Attach)連到PCU, 導到SGSN做身分驗證(Security),因為HLR有所有用戶的資料,確認後會記錄手機到哪個Routing area,還可以跟VLR做Location update,並會跟GGSN申請ip address(Routing Area Update) #### Session Management PDP Context Activation:網路環境啟用,拿到一個ip address、決定QoS參數 PDP Context Deactivation:網路離線 PDP Context Modification:傳輸過程中改變QoS參數 #### GPRS Data Transfer ![](https://i.imgur.com/1KQ1xRk.png) 因為只知道對方的IP address所以必須送到GGSN去查該IP address在哪個SGSN底下,SGSN才能用table對周遭基地台做paging,即使兩台都在附近也需要這樣。 ### GPRS Connection Model **Idle:** - MS is detached from GPRS - no mobility management - SGSN & HLR have no updated routing information - When the subscriber performs a detach, power off, or switching to GSM mode 最省電 **Ready:** - sending or receiving data, handles handover (cell tracking) - When sending or receiving data 最耗電 **Standby:** - MS is attached to GPRS, but not sending or receiving packets. (routing area tracking) - MS can receives paging requests, routing area updates - When no data has been sent or received for a certain period ### CAMEL Architecture ![](https://i.imgur.com/TbR4k5C.png) Home代表不同的電信業者的設備,所以要使用SCP會觸發不同家的。不過MSC當使用者在不同地區則是使用該地區的MSC。但如果要看該用戶有哪些加值服務需要觸發,還是得回到原先的HOME的SCP提供。負責記錄用戶訂閱哪些服務讓其他地區的call model可以比對的是CAMEL Subscription Information (CSI) 打電話流程:發話端A連上所在地的MSC,根據撥打的號碼送到收話端B的GMSC,此時的Home所屬是B的。所以B的HOME的GMSC會查到B的HLR,知道B現在在哪個地方,轉到所在地區的MSC ### CAMEL Subscription Information (CSI) 每個用戶都有的資料 內容有 - TDP List (DP to be armed)有哪些TDP要比對 - SCF address (SS7 address of SCF)加值服務要觸發哪個SCP,有SCP的address - Service key (service to be invoked when DP is met) - Default call handling (error handling, SCF not reached) 當觸發SCP失敗要怎麼辦,或是找不到SCP怎麼辦 - Others: DP criteria, CAMEL capability handling, CSI state, notification flag 這些資訊放在HLR裡 CSI有三種型態 - O-CSI (outgoing CSI) – held in visited network VLR。用戶上線後會從HLR下載存在Visited的MSC - T-CSI (terminating CSI) – **held in interrogating network GMSC** 存在GMSC - VT-CSI (visited terminating CSI) – held in visited network VLR。用戶上線後會從HLR下載存在Visited的MSC 語音留言的加值服務會在T-BCSM的地方觸發 當B沒有上線(開機),根本沒有T-BCSM那塊時,就會在GMSC的地方觸發加值服務 ### CAMEL Prepaid with Roaming 易付卡用戶 ![](https://i.imgur.com/Z1yu2vo.png) 打電話的時候要先去問VLR有沒有用戶的O-CSI,才可以啟用O-BCSM因為這樣才能比對有哪些加值服務,然後才會接收撥打的號碼,之後check credit確認還可以撥打幾分鐘,打完之後update credit更新餘額,或是一開始限制是講100秒,超過之後會做update credit確認還能不能繼續講,如果可以會回去繼續講。 ### CAMEL Attach-Detach State ![](https://i.imgur.com/QZYhURG.png) SGSN在做這部分 Attach request:上線後要先做比對,做身分驗證,比對完才能連上 Attach:比對完才能連上 Intra SGSN Routeing area update:在同個SGSN底下,只是換routing area Inter-SGSN Location Update:跑到外部的SGSN,要重新跑state model,從detached開始,但前面已經身分驗證過了,所以直接做routing area update,然後做change of position GPRS Session到attched 還會通知HLR換SGSN了 ### CAMEL PDP-Context State ![](https://i.imgur.com/OC8guJL.png) Change of Position context: 換完之後又會回去established Routeing area update: 如果用戶移動長距離的話,就像換SGSN一樣,又會有新的state model,從IDLE開始直接到Change之後到established ### CAMEL – SMS ![](https://i.imgur.com/1mSgJmt.png) ### Types of Number Portability ![](https://i.imgur.com/pdm8Da7.png) SPNP: 換服務業者的number portability可以換電信業者但號碼不換 LNP: 號碼可以應用在不同地方,像是申請市話號碼,從一個地方換到沒有很遠的其他地方還是可以繼續用。 SNP: 服務可以帶著走,從plain old telephone換到ISDN,換一個網路讓服務繼續。 像是從中華電信用一個門號,但在國外還可以用同樣的門號,就是申請漫遊服務。 NP/ENUM: 電話號碼轉換成ip address的方式 E.164 number: 國際通用電話號碼編號方式 ### Four of SPNP Schemes ![](https://i.imgur.com/InBK2p6.png) ![](https://i.imgur.com/N9JIUFW.png) 參考簡報p80 81 ## CH3 ### What is SIP? ![](https://i.imgur.com/BTjTqun.png) SIP是對通訊兩方的資訊做有效率的交換,兩邊才開始傳輸多媒體資料,主要是幫助連線的建立,跟傳輸沒有關係 text-base:以文字形態存在 SDP:描述session特徵的格式 ### SIP VS H.323 應用上SIP比H.323多,像是支援multimedia session,H.323很難做,因為希望傳輸訊息量少,也比較嚴謹,限制很多 ![](https://i.imgur.com/JGFbRWK.png) SIP跟H.323對應 ![](https://i.imgur.com/Gf1NFE3.png) Multipoint Control Unit做混音或是影像傳輸 ### SIP Network Entities User Agent (UA): - User Agent Client ‐ Initiate SIP Request 撥打的 - User Agent Server ‐ Accepts or rejects call 接電話的 Network Servers: - Registrar (as UAS) 接受user發送註冊訊息的server - Proxy 負責做封包訊息的繞送、網路的管控 - Redirect Server (as UAS) 幫訊息轉向的server ![](https://i.imgur.com/UYIrCFM.png) Location Server不是SIP Network裡的server #### Proxy server ![](https://i.imgur.com/6sg1kSg.png) ![](https://i.imgur.com/x2pHt3f.png) #### Redirect servers ![](https://i.imgur.com/u4igvG2.png) ### SIP Network Architecture ![](https://i.imgur.com/BG9xPSb.png) 有可能proxy server直接把redirect的request送到更改過的位置,也有可能送回給caller 等知道彼此的ip位置跟資訊之後就都是直接兩點之間用RTP來連線 ### SIP Requests - **REGISTER:** Log in and register the address with a SIP server(Registrar server) - **INVITE:** Initiate a session - **ACK:** ACK only when receiving the **final response** (做好或是不要做才是final response) - **BYE:** Terminate a session 掛電話 - **CANCEL:** Terminate a pending request(只有invite會pending,撥通前取消才叫cancel,撥通後叫bye) - **OPTIONS:** Allow a UA to query another UA or a proxy server as to its capabilities(查詢能支援怎麼樣的服務) ### SIP Responses - **1xx: Provisional** ‐‐ request received, continuing to process the request; 當收到request就回應給對方說收到了 - **2xx: Success** ‐‐ the action was successfully received, understood, and accepted; 處理要求成功 - **3xx: Redirection** ‐‐ further action needs to be taken in order to complete the request; 要求轉向 - **4xx: Client Error** ‐‐ the request contains bad syntax or cannot be fulfilled at this server; 送來的request有錯誤的syntax或是要求無法被server滿足 - **5xx: Server Error** ‐‐ the server failed to fulfill an apparently valid request; 要找的人不在線上或是user agent server壞了 - **6xx: Global Failure** ‐‐ the request cannot be fulfilled at any server. request都送不出去,可能是網路掛了獲釋都沒有server能處理你的request ### SIP Session Setup Example ![](https://i.imgur.com/zmpM3yd.png) register成功回傳200 ok 100 trying是告訴送request說有收到了,不需要再重送,會有timer計時如果幾秒內沒收到100 trying就會重送invite 但教授好像說成是timer計時是決定要不要送100 trying,而原本100 ringinig的因為有先送ringing所以就不會再送100 trying 200 ok會帶有BOB的ip address或是編碼格式、phone number之類的,所以之後ACK就可以直接送給BOB不用經由proxy server invite之後還要送ACK是因為等callee送出200 ok之後會預留資源等待,但就一直等,如果alice沒收到200 ok就會讓兩方都一直在等待,造成資源浪費,如果bob沒收到alice的ACK就會重送200 OK也知道不用保留資源了 ### SIP Message Format ![](https://i.imgur.com/akTraTe.png) response from to的部分是指這個連線,所以from to不用改 ### Terms: Call & Session - Call一定是兩方通話進行連線 - Session可以只是傳輸影片、影像進行的多媒體連線 - SIP Transaction ![](https://i.imgur.com/gbJkv4F.png) 第三個例子像是register+一個200ok ![](https://i.imgur.com/2rHQljf.png) transaction計算 ### Headers contact Header: Provides a URL for use in future communication regarding a particular session Via Header: 會記錄經過的路徑,避免封包產生迴圈;讓Response可以走相同的路徑 前兩個是general header Entity Headers: 跟message body資訊有關的,像是長度、格式、encoding方式 ### Usage of SDP with SIP SIP提供建立多媒體訊息交換的機制 SDP提供結構化的語言來描述Session參數 ### The Structure of SDP ![](https://i.imgur.com/RGMnMDF.png) 如果是視訊通話就會有兩個media 如果只是語音的話可能就只有一個 ### Message body Mandatory Fields ![](https://i.imgur.com/or7WoBL.png) ### SDP Example ![](https://i.imgur.com/KPZnMKt.png) ### SIP&SDP Offer/Answer Model Re‐INVITE: 如果server回覆超過一種codec,就要重新寄送 A mismatch: protocal都不支援,caller要發新的invite ### SIP Session Setup Example ![](https://i.imgur.com/JLFqo4q.png) #### Register ![](https://i.imgur.com/B6faF53.png) Max forward: 每次經過一個就-1,到0就不繼續了,代表也送不到了 Contact: 填自己,因為是註冊所以有問題就是找原本註冊的人 Expires: 這次註冊的有效期限是兩個小時(7200s) #### 200 OK 註冊成功 ![](https://i.imgur.com/5iWWxZ4.png) Max forward: 不用複製前面的,因為有送到代表回程走原路回去就好,不需要用到 #### 1) INVITE(A‐>Pa) ![](https://i.imgur.com/mIplj18.png) #### 2) INVITE(Pa‐>Pb) ![](https://i.imgur.com/T4MF5tA.png) via新增了,加在最上面,max forward-1 #### 3) INVITE(Pb‐>B) ![](https://i.imgur.com/WwpX2Ew.png) via又新增,max forward-1 #### 4) 180 Ringing(B‐>Pb) ![](https://i.imgur.com/FyVuloC.png) 前面的都copy,除了max forward不用,contact也不一樣 #### 5) 180 Ringing(Pb‐>Pa) ![](https://i.imgur.com/vctROSq.png) via被拿掉一個 #### 6) 180 Ringing(Pa‐>A) ![](https://i.imgur.com/GVMr50d.png) via被拿掉一個 #### 7) 200 OK(B‐>Pb) ![](https://i.imgur.com/NWg0rpG.png) 有content type #### 8) 200 OK(Pb‐>Pa) ![](https://i.imgur.com/o9hnF0J.png) via被拿掉 #### 9) 200 OK(Pa‐>A) ![](https://i.imgur.com/QtSi8kq.png) #### 10) ACK(A‐>B) ![](https://i.imgur.com/8K76UCL.png) 有max forward #### 12) BYE(B‐>A) ![](https://i.imgur.com/LFSLFcz.png) from還有to跟前面的不一樣 #### 13) 200 OK (A‐>B) ![](https://i.imgur.com/9aZyfAb.png) ### Initial Registration ![](https://i.imgur.com/LgpM5tK.png) ![](https://i.imgur.com/8ANsUQB.png) 多了digest username=John 還有response,就是把server前面給的nonce用MD5 algorithm把字串做加密,加密後的字串就變response。 因為怕有人假冒身分,所以要做身分認證;registrar會回傳加密的演算法,之後user會回傳response裡面將user的key用該演算法做加密,之後registrar會比對user給的key跟資料庫裡的key是否一致,通過身分驗證。 ### Updated Registration ![](https://i.imgur.com/rhbZ6tb.png) F2的Contact: * 代表所有的ID都要離開 Expire=0代表unregister ![](https://i.imgur.com/rnpCol8.png) F4是sweet幫watson註冊 ### UAC Behavior 一定要的request line - method - Request‐URI: initial Request‐URI set as the To field - SIP version = SIP/2.0 Request一定要的六個header ![](https://i.imgur.com/yHRvCz7.png) ### UAS Behavior 一定要的response line - SIP version = SIP/2.0 - Status code response一定要的五個header ![](https://i.imgur.com/5yhpHLV.png) ### CSeq Header - Retransmissions of the same request carry the same sequence number, but an INVITE with a different message body or different header fields (a “re‐invitation”) acquires a new, higher sequence number. (重傳一個一樣的request的sequence number一樣,但如果invite的message body或是header fields不同的話就要更高的sequence number) - ACK and CANCEL contain the same CSeq value as the INVITE request. - BYE request with higher CSeq value. ### UA to UA Call Flow ![](https://i.imgur.com/oqSenUr.png) ![](https://i.imgur.com/oGgjrxR.png) ![](https://i.imgur.com/CvQ3w7g.png) ### SIP OPTIONS Method **OPTIONS Request** - Determine the capabilities of a potential called party(問對方有支援哪些東西_ **OPTIONS Respons** Allow Header - Indicate the SIP methods that the receiver can handle Supported Header - Indicate the SIP extensions that can be supported ### Require Header ![](https://i.imgur.com/mHSzOhw.png) ### Redirect Servers ![](https://i.imgur.com/6a3llII.png) ### Proxy Servers ![](https://i.imgur.com/Y58cUZZ.png) ### Loop Detect ![](https://i.imgur.com/ooL39sZ.png) Proxy4->Proxy1時proxy1在察看via會發現發生loop了,會回傳482 ### Spiral ![](https://i.imgur.com/lv2kd5O.png) proxy1發現第二次傳回來了,但發現跟第一次的內容不同,就會繼續傳,但如果一樣就變成loop detect ### Record‐Route Header ![](https://i.imgur.com/Tqp33Q2.png) 跟via很像,也是記錄路徑,但差別是via在回程時會把路徑一層一層拿掉並丟掉,但record-route會留著路徑,讓下一次在request時可以走同樣的路徑 ### Route Header **Determine the request route** 跟Record‐Route Header不一樣,但會把路徑資訊複製並反向再存起來(因為record-route的最底下的地址是最開頭) ### Parallel/Sequential Search Parallel Search: 在別人打電話的時候,可能對方同時有手機、筆電、桌機都有上線,所以都會同時撥打,看哪個會接 Sequential Search: 先打給其中一種,沒接就換下一個,一步一步地尋找 接收到2xx or 6xx代表有一種接了,所以Parallel/Sequential Search都會停 ### Forking Proxy Parallel Search的proxy ![](https://i.imgur.com/sSJTFzv.png) ![](https://i.imgur.com/Z19K9fu.png) INVITE會分成兩個,並在via的地方加上branch代表pc1或是pc2 ![](https://i.imgur.com/VZZmbZs.png) 就不會管cancel的那個 ### Dialog A dialog identified at each UA with a dialog ID consists of - a Call‐ID value: the Call‐ID of the message - a local tag: the tag in the From/To field for UAC/UAS - a remote tag: the tag in the To/From for UAC/UAS. The dialog ID at each UA in the dialog is not the same. ![](https://i.imgur.com/XNEiTwm.png) local sequence number: 自己的sequence number remote sequence number: 對方的sequence number early state: 初始化的時候的state confirmed: 等確認對方接到電話,回200 ok才變成confirmed ### Loose Routing 差別是Route header要不要更新到Request‐URI裡面 Strict routing就是要,比較嚴謹,loose routing就不用,只根據route header傳送 ### SIP Dialogs and Routing ![](https://i.imgur.com/wnC28ru.png) 一開始route到p1 ![](https://i.imgur.com/gqFScV8.png) from是a-tag所以U1的local tag是a-tag remote tag是b-tag,U2則相反 然後U2沒有local sequence是因為他只是response原本u1的request不是自己新的指令 route set兩個也互相相反 ![](https://i.imgur.com/Vp88gag.png) 發200 ok之後就變成confirmed的狀態,同樣沒發request所以u2沒有local sequence ![](https://i.imgur.com/89yzcbE.png) ![](https://i.imgur.com/8CeLkuU.png) 發bye之後u2有request就有local sequence u1也有remote sequence了 ![](https://i.imgur.com/WjPvL1K.png) ### B2BUA 會發出request(像是User agent client)也會接收request(像是user agent server),跟proxy server不同的是連線都會個別建立dialog state,因為上面有兩個user agent ### Location Service 想要獲得關於callee的繞送資訊,查詢要找的人到底在哪,就可以在這查 會跟Register有關,是由register提供資訊,因為註冊之後系統會記錄user ### SIP Protocol Structure ![](https://i.imgur.com/Evd7faa.png) ### 2 Kinds of Proxy Servers ![](https://i.imgur.com/3epj8QF.png) ### SIP INFO Method The transfer of DTMF digits The transfer of mid‐call signaling information 用控制訊號來傳分機號碼、數字鍵的資訊 ### SIP Event Notification ![](https://i.imgur.com/os2Rau3.png) 有訂閱對方狀態之後就會通知對方的上線、下線狀態 ### SIP MESSAGE Method A new SIP method – MESSAGE - This request carries the actual message in a message body. - A MESSAGE request does not establish a SIP dialog 舉例: ![](https://i.imgur.com/ex1hhhV.png) ![](https://i.imgur.com/XDOHspW.png) ### SIP REFER Method 轉接功能 ![](https://i.imgur.com/SZtGb0B.png) 有多了兩個header: refer to, refer by 舉例: ![](https://i.imgur.com/4hprwX3.png) 原本跟joe打電話,之後要refer轉接給susan ![](https://i.imgur.com/f99PFKI.png) 然後就變成mary跟susan通話 ### Call Forwarding ![](https://i.imgur.com/IzcXARQ.png) 原本想跟user2 通話但user2忙線中,proxy server會轉到user3,可以注意看畫線部分 ### 3GPP All IP Network ![](https://i.imgur.com/fZ334aG.png) - 其中CSCF的角色類似於 SIP 中的 proxy server 的角色;而 HSS (Home Subscriber Server)則類似於 HLR 的角色。 - 藍色虛線以下的部分是指Release 4制定的範圍,以上的部分則是Release 5。 - Release 4 制定的部分,稱之為 Circuit Switched Domain;Release 5制定的部分,稱之為Packet Switched Domain。 - CSCF (Call Session Control Function) 主要是負責 Call Control 通話控制。MRF (Multimedia Resource Function)是作 Media Mixing, Play Announcement,支援Multi‐party Conferencing,類似 H.323裡面的MCU,Soft‐switch 架構中的 Media Server #### Circuit‐Switched Services 為release4 ![](https://i.imgur.com/x0PRcwD.png) All IP 架構中將 MSC 的功能中的信令(signaling)以及媒體資料(media)分開成兩個元件:MSC Server 以及 MGW (Media Gateway)。MSC Server 只處理信令的部份,利用MGCP或MEGACO來控制MGW 來處理媒體資料的轉送。 #### Packet‐Switched Services ![](https://i.imgur.com/q8YME98.png) 只有這樣只能上網不能打電話 #### Real‐Time PS Services ![](https://i.imgur.com/hycXL9W.png) 這樣就能建立通話 #### Interworking with PSTN 要跟PSTN通話就又要多其他元件 #### HSS ![](https://i.imgur.com/VYb0IvK.png) ![](https://i.imgur.com/OjLezBX.png) 比HLR支援更多介面,畫線是新加的 #### MGCF & MGW ![](https://i.imgur.com/gcQ4Xiu.png) 這裡的MGCF/MGW所扮演的角色,和之前MGCP/MEGACO中所介紹的網路元件類似。但在這裡,Media gateway除了界接PSTN外,也透過Iu介面和UTRAN連接。 #### MSC Server ![](https://i.imgur.com/jSXRk7L.png) 在All IP網路中的MSC server只包含原本MSC中的call control和mobility control的部分。它負責控制UTRAN這一端的media gateway。所以說,MSC server + MGW就可包含一個完整的MSC。 #### MRF ![](https://i.imgur.com/i9k7aFE.png) 這個元件類似於H.323網路中的MCU,負責多方通話的控制 #### T‐SGW & R‐SGW ![](https://i.imgur.com/VVlhkk8.png) ![](https://i.imgur.com/had7Y08.png) ### IP Multimedia Subsystem ![](https://i.imgur.com/NYpEBdN.png) Home Network: 看是哪個電信公司用戶就用哪個 visited Network: 當地的網路 I-CSCF: 這個可以查詢HSS的資料庫,查詢訂購的服務、是否為合法用戶... S-CSCF: 提供服務用的,像是存加值服務觸發的條件 App.Server: 用來提供加值服務 ### UE presence in IMS ![](https://i.imgur.com/ruMMmDV.png) 首先用戶上線後會連到基地台,再由SGSN連線到Home network的HSS驗證用戶身分 驗證成功後就連上線,再到GGSN拿IP address做PDP context acitvate,還要知道待會連上線的P-CSCF的IP address,如何知道P-CSCF的IP address見第209頁,拿到之後看Registration Diagram那邊 ![](https://i.imgur.com/34xNZ4j.png) 補充:UE就是用戶手機,是3G網路的稱呼,不叫MS 作法一(Use of DHCP (Dynamic Host Configuration Protocol): GGSN會先去問DHCP的server:1. P‐CSCF domain name 2. IP addresses of DNS servers,之後GGSN根據P-CSCF的domain name去問DNS server P‐CSCF(s)的IP addresses 作法二(PDP Context Activation signaling to the UE) P-CSCF的IP address本來就存在GGSN中,當用戶做PDP Context Activation時GGSN就會把內部儲存的資料傳給UE ### Identification of IM Users ![](https://i.imgur.com/R3vjyEm.png) Public user identities:要打電話要透過public的,所以就是User的電話號碼 private user identities:用來做身分驗證 ### Call Session Control Function ![](https://i.imgur.com/1XLcRfo.png) P‐CSCF: 負責訊息繞送 I-CSCF: 除了繞送外還要查詢HSS資料 S-CSCF: 除了繞送還要提供服務控制 #### Proxy CSCF ![](https://i.imgur.com/m4tdZx4.png) 手機連上線後第一個contact point 如果收到不正常的訊息(像是syntax error)行為才會像UE 功能: - 根據SIP meesage裡的home domain name把訊息forward到該home network的I-CSCF - Forward SIP messages from the UE to the SIP server (e.g. S‐CSCF) - 偵測到緊急電話,就直接繞到案發事件附近的S-CSCF #### Interrogating CSCF ![](https://i.imgur.com/gACdrtP.png) #### I‐CSCF(THIG) **T**opology **H**iding **I**nter‐network **G**ateway 就是在記錄S-CSCF時不是用IP而是用代碼紀錄,防止駭客攔截,所以P-CSCF也不知道S-CSCF的位置,只知道代碼,之後建立通話就需要每次都經過I-CSCF(THIG)查詢 #### Serving CSCF ![](https://i.imgur.com/sxP5JIc.png) ### CSCF Roles & Features ![](https://i.imgur.com/helLjO6.png) ### Registration Diagram ![](https://i.imgur.com/r8rKP6D.png) 接續前面拿到P-CSCF IP address之後,之後發送SIP register到P-CSCF,P-CSCF會看訊息裡的From, To,Call-ID,根據From欄位看你是哪家業者的用戶,送到該業者的I-CSCF去,之後才可以查HSS看漫遊是否被允許,之後看用戶有沒有特別的需求,I-CSCF會決定一個S-CSCF,之後把S‐CSCF的domain name傳給HSS記錄起來,並且下載用戶的profile(加值服務觸發的條件),最後送出加值服務的觸發給APP. Server。 ![](https://i.imgur.com/yeowNja.png) ### Call Setup Diagram ![](https://i.imgur.com/F9SEM4x.png) 要打電話時,打電話端會發送SIP Invite到P-CSCF,之後P-CSCF也知道UE的S-CSCF是誰,就會把訊息Forward過去,之後S-CSCF透過Message的To就知道是哪家業者,就會給該業者的I-CSCF去,之後I-CSCF問HSS用戶的S-CSCF,之後S-CSCF也知道該用戶的P-CSCF是誰,就會打過去。 ### IP Version Interworking ![](https://i.imgur.com/5lb6nfn.png) 碰到用不同IP version的手機要互相連線 #### IMS ALG & TrGW 如果碰到用不同IP version的手機要互相連線,需要透過 - IMS ALG修改SIP Message body跟header,以及不同版本之間轉換做對應的綁定 - NAT-PT 將 IPv6 網絡中的地址與 IPv4 網絡中的地址綁定,反之亦然,以在兩個 IP 域之間提供透明路由,而無需對端點(如 UE)進行任何更改。 ### Originating towards IPv4 ![](https://i.imgur.com/6Qn1cQC.png) 到S-CSCF時發現是要從IPv6到IPv4後,就會把訊息送到IMS‐ALG,之後IMS‐ALG會跟Trunking gateway要到IPv4的adress跟port number代表UE(A),之後再修改message,把訊息送給對方。 傳回來也是要到IMS‐ALG拿到IPv6的adress代表UE(B) ### Terminating from IPv4 ![](https://i.imgur.com/k9MJv1s.png) 也是要到IMS‐ALG拿到IPv6的adress代表UE(B) ### Application Triggering ![](https://i.imgur.com/TEyxbUm.png) - SPT: Service Point Triggers (SPTs) - iFC(initial Filter Criteria) - S-CSCF receives from HSS,就是註冊時會下載的那些加值服務資料 送進來的訊息會拆成好幾個SPT,並會到Filter Criteria去比對加值服務的觸發,觸發是跟iFC進行比對 訊息會被拆成: ![](https://i.imgur.com/0D418D7.png) #### Service Point Trigger ![](https://i.imgur.com/5aZ0C28.png) #### Filter Criteria ![](https://i.imgur.com/4DQpgq3.png) ### Triggering for REGISTER ![](https://i.imgur.com/A9zErrh.png) 所以投影片第九頁才有講到third party,因為原本UE做Register訊息,會產生三種(第1,3,5步驟)不同的訊息,而原本UE送的在第三步200 OK就結束了。

    Import from clipboard

    Paste your markdown or webpage here...

    Advanced permission required

    Your current role can only read. Ask the system administrator to acquire write and comment permission.

    This team is disabled

    Sorry, this team is disabled. You can't edit this note.

    This note is locked

    Sorry, only owner can edit this note.

    Reach the limit

    Sorry, you've reached the max length this note can be.
    Please reduce the content or divide it to more notes, thank you!

    Import from Gist

    Import from Snippet

    or

    Export to Snippet

    Are you sure?

    Do you really want to delete this note?
    All users will lose their connection.

    Create a note from template

    Create a note from template

    Oops...
    This template has been removed or transferred.
    Upgrade
    All
    • All
    • Team
    No template.

    Create a template

    Upgrade

    Delete template

    Do you really want to delete this template?
    Turn this template into a regular note and keep its content, versions, and comments.

    This page need refresh

    You have an incompatible client version.
    Refresh to update.
    New version available!
    See releases notes here
    Refresh to enjoy new features.
    Your user state has changed.
    Refresh to load new user state.

    Sign in

    Forgot password
    or
    Sign in via Google Sign in via Facebook Sign in via X(Twitter) Sign in via GitHub Sign in via Dropbox Sign in with Wallet
    Wallet ( )
    Connect another wallet

    New to HackMD? Sign up

    By signing in, you agree to our terms of service.

    Help

    • English
    • 中文
    • Français
    • Deutsch
    • 日本語
    • Español
    • Català
    • Ελληνικά
    • Português
    • italiano
    • Türkçe
    • Русский
    • Nederlands
    • hrvatski jezik
    • język polski
    • Українська
    • हिन्दी
    • svenska
    • Esperanto
    • dansk

    Documents

    Help & Tutorial

    How to use Book mode

    Slide Example

    API Docs

    Edit in VSCode

    Install browser extension

    Contacts

    Feedback

    Discord

    Send us email

    Resources

    Releases

    Pricing

    Blog

    Policy

    Terms

    Privacy

    Cheatsheet

    Syntax Example Reference
    # Header Header 基本排版
    - Unordered List
    • Unordered List
    1. Ordered List
    1. Ordered List
    - [ ] Todo List
    • Todo List
    > Blockquote
    Blockquote
    **Bold font** Bold font
    *Italics font* Italics font
    ~~Strikethrough~~ Strikethrough
    19^th^ 19th
    H~2~O H2O
    ++Inserted text++ Inserted text
    ==Marked text== Marked text
    [link text](https:// "title") Link
    ![image alt](https:// "title") Image
    `Code` Code 在筆記中貼入程式碼
    ```javascript
    var i = 0;
    ```
    var i = 0;
    :smile: :smile: Emoji list
    {%youtube youtube_id %} Externals
    $L^aT_eX$ LaTeX
    :::info
    This is a alert area.
    :::

    This is a alert area.

    Versions and GitHub Sync
    Get Full History Access

    • Edit version name
    • Delete

    revision author avatar     named on  

    More Less

    Note content is identical to the latest version.
    Compare
      Choose a version
      No search result
      Version not found
    Sign in to link this note to GitHub
    Learn more
    This note is not linked with GitHub
     

    Feedback

    Submission failed, please try again

    Thanks for your support.

    On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?

    Please give us some advice and help us improve HackMD.

     

    Thanks for your feedback

    Remove version name

    Do you want to remove this version name and description?

    Transfer ownership

    Transfer to
      Warning: is a public team. If you transfer note to this team, everyone on the web can find and read this note.

        Link with GitHub

        Please authorize HackMD on GitHub
        • Please sign in to GitHub and install the HackMD app on your GitHub repo.
        • HackMD links with GitHub through a GitHub App. You can choose which repo to install our App.
        Learn more  Sign in to GitHub

        Push the note to GitHub Push to GitHub Pull a file from GitHub

          Authorize again
         

        Choose which file to push to

        Select repo
        Refresh Authorize more repos
        Select branch
        Select file
        Select branch
        Choose version(s) to push
        • Save a new version and push
        • Choose from existing versions
        Include title and tags
        Available push count

        Pull from GitHub

         
        File from GitHub
        File from HackMD

        GitHub Link Settings

        File linked

        Linked by
        File path
        Last synced branch
        Available push count

        Danger Zone

        Unlink
        You will no longer receive notification when GitHub file changes after unlink.

        Syncing

        Push failed

        Push successfully