Accept頭字段用于在消息正文中指示可接受的消息Internet媒體類型。
標題字段描述使用通常在因特網(wǎng)中使用的格式類型/子類型的媒體類型。
如果不存在,則假定可接受的消息體格式為 application / sdp 。
媒體類型列表可以使用 q 值參數(shù)設(shè)置首選項。
Accept-Encoding頭字段用于指定可接受的消息體編碼方案。
編碼可以用于確保具有大消息體的SIP消息適合單個UDP數(shù)據(jù)報。
使用 q 值參數(shù)可以設(shè)置首選項。如果所列出的方案都不能被UAC接受,則返回406不可接受的響應。如果不包括,則假設(shè)的編碼將是 text / plain 。
To 表示請求的最終收件人。UA生成的任何響應將包含此標頭字段并添加標簽。它是必需的頭。
代理生成的任何響應必須在 To 頭字段中添加標簽。
To 頭字段URI從不用于路由。
From 頭字段表示請求的發(fā)起者。它是用于標識對話框的兩個地址之一。
A From 頭字段可以包含用于標識特定呼叫的標簽。
它可以包含顯示名稱,在這種情況下,URI包含在<&gt ;.
它是必需的頭。
Call-ID頭字段在所有SIP請求和響應中是強制的。它用于唯一標識兩個用戶代理之間的呼叫。
呼叫ID在呼叫之間必須是唯一的。
用戶代理的所有注冊應使用相同的Call-ID。
Call-ID始終由用戶代理創(chuàng)建,并且不會被服務(wù)器修改。
它是一個加密隨機標識符。
Via用于記錄由有助于將響應路由回始發(fā)者的請求所采用的SIP路由。
生成請求的UA在Via頭字段中記錄其自己的地址。
轉(zhuǎn)發(fā)請求的代理將Via頭字段包含其自己的地址添加到Via頭字段列表的頂部。
生成對請求的響應的代理或UA將請求中的所有Via報頭字段按順序復制到響應中,然后將響應發(fā)送到在頂部Via報頭字段中指定的地址。
接收響應的代理檢查頂部Via頭字段并匹配其自身的地址。
如果不匹配,則響應已被丟棄。
然后刪除頂部Via頭字段,并將響應轉(zhuǎn)發(fā)到在下一個Via頭字段中指定的地址。
Via頭字段包含協(xié)議名稱,版本號和傳輸(SIP / 2.0 / UDP,SIP / 2.0 / TCP等),并且可以包含端口號和參數(shù),例如接收的,rport,branch,maddr, b>和 ttl 。
如果UA或代理從與在頂部Via頭字段中指定的地址不同的地址接收到請求,則將收到的標簽添加到Via頭字段。
分支參數(shù)通過UA和代理被添加到Via報頭字段,其被計算為Request-URI的哈希函數(shù),以及To,F(xiàn)rom,Call-ID和CSeq數(shù)。
CSeq頭字段是每個請求中所需的頭字段。 它包含對每個請求增加的十進制數(shù)。
通常,對于每個新請求,除了 CANCEL 和 ACK 請求,它使用它所引用的INVITE請求的CSeq號,它增加1。
UAS使用CSeq計數(shù)來確定失序請求或區(qū)分新請求(不同CSeq)或重傳(相同CSeq)。
CSeq頭字段由UAC使用以匹配對其引用的請求的響應。
例如,發(fā)送INVITE請求然后發(fā)送CANCEL請求的UAC可以通過CSeq中的方法告知200OK響應,如果它是對邀請或取消請求的響應。
Contact頭字段用于向其他用戶傳達關(guān)于請求發(fā)起者的地址。 一旦接收到聯(lián)系人報頭字段,URI可以被緩存并且用于在對話中路由未來的請求。
例如,在對INVITE的200OK響應中的聯(lián)系人報頭字段可以允許確認ACK消息和在該呼叫期間的所有未來請求繞過代理并直接去往被叫方。
Record-Route頭字段用于強制路由通過代理以用于兩個UA之間的會話(對話)中的所有后續(xù)請求。
通常,Contact頭字段的存在允許UA直接繞過初始請求中使用的代理鏈來發(fā)送消息。
將其地址插入到記錄 - 路由頭部字段中的代理覆蓋此并且迫使將來的請求包括包含強制該代理被包括的代理的地址的Route頭字段。
希望實現(xiàn)此操作的代理將插入包含其自己的URI的頭字段,或?qū)⑵銾RI添加到已經(jīng)存在的Record-Route頭字段。
構(gòu)造URI以便URI解析回代理服務(wù)器。 UAS將Record-Route頭字段復制到對請求的200 OK響應中。
頭字段由代理不變地轉(zhuǎn)發(fā)回UAC。 然后,UAC存儲記錄 - 路由代理列表加上聯(lián)系人頭字段(如果在200OK中存在),以便在所有后續(xù)請求中的路由頭字段中使用。
組織頭字段用于指示消息的發(fā)起者所屬的組織。
它也可以由代理插入,因為消息從一個組織傳遞到另一個組織。
與所有SIP報頭字段一樣,它可以由代理用于做出路由決定,并且由UA用于進行呼叫篩選決定。
它用于指示資源或服務(wù)何時可以再次可用。
在503服務(wù)不可用響應中,它指示服務(wù)器何時可用。
在404未找到,600 Busy Everywhere和603拒絕響應中,它指示被叫UA何時可以再次可用。
它包含以秒為單位的時間段。
可選的Subject頭字段用于指示媒體會話的主題。
報頭字段的內(nèi)容也可以在提醒期間顯示,以幫助用戶決定是否接受呼叫。
Example: Subject: How are you?
它通常包含在對OPTIONS請求的響應中。
如果未實現(xiàn)任何選項,則不包括頭字段。
如果UAC列出了支持報頭字段中的選項,代理或UAS可以在呼叫期間使用該選項。
如果必須使用或支持該選項,那么將使用Require頭字段。
Example: Supported: rel100
Expires頭字段用于指示請求或消息內(nèi)容有效的時間間隔。
當存在于INVITE請求中時,報頭字段在INVITE請求的完成時設(shè)置時間限制。
也就是說,UAC必須在該時間段內(nèi)接收最終響應(非1xx),或者INVITE請求被408請求超時響應自動取消。
一旦建立會話,來自原始INVITE中的Expires頭字段的值沒有效果 - 為此目的必須使用Session-Expires頭字段。
如果存在于REGISTER請求中,則頭字段在Contact頭字段中的URI上設(shè)置不包含 expires 參數(shù)的時間限制。
Expires也用于SUBSCRIBE請求中,以指示訂閱持續(xù)時間。
Example: Expires: 30
該報頭字段用于傳送關(guān)于發(fā)起請求的UA的信息。
更多建議: