結構化
BeginTransfer
定義於 fuchsia.overnet.protocol/peer_protocol.fidl
fuchsia.overnet.protocol/StreamControl.begin_transfer 的主體。
欄位 | 類型 | 說明 | 預設 |
---|---|---|---|
new_destination_node |
NodeId
|
這個串流端點的新擁有者。 |
無預設 |
transfer_key |
TransferKey
|
用於識別這項擁有權轉移的金鑰。 |
無預設 |
ChannelHandle
定義於 fuchsia.overnet.protocol/zircon_proxy.fidl
經 Proxy 處理的管道。
欄位 | 類型 | 說明 | 預設 |
---|---|---|---|
rights |
ChannelRights
|
指派給這個帳號代碼的權利。 |
無預設 |
stream_ref |
StreamRef
|
為帶入這個管道而建立的 Overnet Proxy 串流。上述串流的通訊協定將為 |
無預設 |
ConnectToService
定義於 fuchsia.overnet.protocol/peer_protocol.fidl
建立標示 stream_id
的新串流,與廣告的服務 service_name
通訊。
欄位 | 類型 | 說明 | 預設 |
---|---|---|---|
service_name |
string[255]
|
要連結哪個服務。 |
無預設 |
stream_ref |
StreamRef
|
此服務連線會在哪個 QUIC 串流建立。 |
無預設 |
rights |
ChannelRights
|
這個連結的管道權限。 |
無預設 |
options |
ConnectToServiceOptions
|
這個連線的輔助選項。 |
無預設 |
空白
定義於 fuchsia.overnet.protocol/peer_protocol.fidl
<EMPTY>
EventPairHandle
定義於 fuchsia.overnet.protocol/zircon_proxy.fidl
代理事件配對。
欄位 | 類型 | 說明 | 預設 |
---|---|---|---|
rights |
EventPairRights
|
指派給這個帳號代碼的權利。 |
無預設 |
stream_ref |
StreamRef
|
為攜帶此事件組合而建立的 Overnet Proxy 串流。這個串流不會傳送任何酬載,但傳輸和信號控制訊息將按照用於所有處理類型的一般 StreamControl/SignalUpdate 通訊協定。 |
無預設 |
NodeId
定義於 fuchsia.overnet.protocol/labels.fidl
覆蓋網路上的節點位址。
欄位 | 類型 | 說明 | 預設 |
---|---|---|---|
id |
uint64
|
無預設 |
OpenTransfer
定義於 fuchsia.overnet.protocol/peer_protocol.fidl
建立標示為 stream_id
的新串流,完成標示為 transfer_key
的移轉。
欄位 | 類型 | 說明 | 預設 |
---|---|---|---|
stream_id |
StreamId
|
此服務連線會在哪個 QUIC 串流建立。 |
無預設 |
transfer_key |
TransferKey
|
轉移金鑰追蹤轉移情況。 |
無預設 |
SocketHandle
定義於 fuchsia.overnet.protocol/zircon_proxy.fidl
有 Proxy 的通訊端。
欄位 | 類型 | 說明 | 預設 |
---|---|---|---|
rights |
SocketRights
|
指派給這個帳號代碼的權利。 |
無預設 |
stream_ref |
StreamRef
|
為攜帶此通訊端而建立的 Overnet Proxy 串流。上述串流的通訊協定將為 |
無預設 |
socket_type |
SocketType
|
通訊端選項,每 |
無預設 |
StreamId
定義於 fuchsia.overnet.protocol/labels.fidl
識別 Overnet 網格上的兩個程序之間的單一超網路串流。
欄位 | 類型 | 說明 | 預設 |
---|---|---|---|
id |
uint64
|
無預設 |
TransferInitiator
定義於 fuchsia.overnet.protocol/peer_protocol.fidl
fuchsia.overnet.protocol/StreamRef.transfer_initiator 的主體。
欄位 | 類型 | 說明 | 預設 |
---|---|---|---|
stream_id |
StreamId
|
這項轉乘作業的排放串流。來自舊 Proxy 端的緩衝訊息會透過這個單向 QUIC 串流傳送,且應在處理「之前」處理,才能處理來自新端點的任何訊息。 |
無預設 |
new_destination_node |
NodeId
|
我們要聯絡的這個 Proxy 的對等節點 ID。 請注意,這「可能」是接收這則訊息的節點。 |
無預設 |
transfer_key |
TransferKey
|
用於識別這項擁有權轉移的金鑰。 |
無預設 |
TransferWaiter
定義於 fuchsia.overnet.protocol/peer_protocol.fidl
fuchsia.overnet.protocol/StreamRef.transfer_waiter 的主體。
欄位 | 類型 | 說明 | 預設 |
---|---|---|---|
stream_id |
StreamId
|
這項轉乘作業的排放串流。來自舊 Proxy 端的緩衝訊息會透過這個單向 QUIC 串流傳送,且應在處理「之前」處理,才能處理來自新端點的任何訊息。 |
無預設 |
transfer_key |
TransferKey
|
用於識別這項擁有權轉移的金鑰。 |
無預設 |
ZirconChannelMessage
定義於 fuchsia.overnet.protocol/zircon_proxy.fidl
透過 Overnet 串流的 Zircon 管道 Proxy 代理的單一訊息。
欄位 | 類型 | 說明 | 預設 |
---|---|---|---|
bytes |
vector<uint8>[65536]
|
酬載的位元組部分。 |
無預設 |
handles |
vector<ZirconHandle>[64]
|
處理部分酬載。 |
無預設 |
ENUMS
SocketType strict
類型:uint32
定義於 fuchsia.overnet.protocol/zircon_proxy.fidl
透過 fuchsia.overnet.protocol/SocketHandle 通訊的通訊端類型。
名稱 | 值 | 說明 |
---|---|---|
資料彙整 |
0 |
Datagram 導向的通訊端。 |
STREAM |
1 |
串流導向的通訊端。 |
資料表
ConfigRequest
定義於 fuchsia.overnet.protocol/peer_protocol.fidl
整體連線設定要求
序數 | 欄位 | 類型 | 說明 |
---|
ConfigResponse
定義於 fuchsia.overnet.protocol/peer_protocol.fidl
整體連線設定回應 - 做為連線串流的第一個回應訊息傳送。
序數 | 欄位 | 類型 | 說明 |
---|
ConnectToServiceOptions
定義於 fuchsia.overnet.protocol/peer_protocol.fidl
建立服務連線的選項。
序數 | 欄位 | 類型 | 說明 |
---|
PeerDescription
定義於 fuchsia.overnet.protocol/peer_protocol.fidl
單一節點的說明。
序數 | 欄位 | 類型 | 說明 |
---|---|---|---|
1 |
services |
vector<string>
|
這個節點發布的服務組合, |
SignalUpdate
定義於 fuchsia.overnet.protocol/zircon_proxy.fidl
信號狀態更新。這些信號會以側邊管道傳輸,每種處理代碼類型都會散播一些訊號位元。
序數 | 欄位 | 類型 | 說明 |
---|---|---|---|
1 |
assert_signals |
Signals
|
更新部分信號 |
聯合國
PeerMessage 嚴格
定義於 fuchsia.overnet.protocol/peer_protocol.fidl
兩個 Overnet 節點之間的點對點通訊協定。用戶端 QUIC 連線會透過 QUIC 串流 0 將這個 x Union 傳送至伺服器。
序數 | Variant | 類型 | 說明 |
---|---|---|---|
1 |
connect_to_service |
ConnectToService
|
要求為由這個對等點匯出的服務建立管道。 |
2 |
update_node_description |
PeerDescription
|
在伺服器上更新這項同類應用程式說明。 |
4 |
open_transfer |
OpenTransfer
|
開啟已轉移的串流。 |
同級回覆嚴格
定義於 fuchsia.overnet.protocol/peer_protocol.fidl
視情況回覆 PeerMessage 的訊息。 ConfigResponse 訊息必須已經傳送。
序數 | Variant | 類型 | 說明 |
---|---|---|---|
1 |
update_link_status_ack |
Empty
|
確認 UpdateLinkStatus 訊息 |
StreamControl 嚴格
定義於 fuchsia.overnet.protocol/peer_protocol.fidl
串流控制訊息:如果影格類型為 1 (StreamControl),系統就會傳送,而非一般串流影格。待辦事項:請考慮在 FIDL 中定義串流取景格式。
序數 | Variant | 類型 | 說明 |
---|---|---|---|
1 |
begin_transfer |
BeginTransfer
|
轉移作業已開始:傳送節點要轉移控制權。 |
2 |
ack_transfer |
Empty
|
確認 start_transfer - 傳送者已看到先前傳送的 begin_transfer 並已回應。這是一般直播最後傳送的最後一則訊息。 |
3 |
end_transfer |
Empty
|
結束傳輸 - 訊號排出串流已完成清空。這是在排除串流中傳送的最後一則訊息。 |
4 |
shutdown |
zx/Status
|
關閉串流並顯示部分狀態。 |
StreamRef 嚴格
定義於 fuchsia.overnet.protocol/peer_protocol.fidl
StreamRef 會識別新的 Proxy 串流,並詳細說明該串流在接收節點上的方式。
序數 | Variant | 類型 | 說明 |
---|---|---|---|
1 |
creating |
StreamId
|
系統正在建立新的 Proxy,而 Proxy 的另一端則位於傳送節點上。這是簡單的情況,我們會直接傳送用來傳輸流量的 QUIC 串流 ID。 |
2 |
transfer_initiator |
TransferInitiator
|
正在將現有的 Proxy 轉移至這個節點。這個節點應啟動與對等點的通訊。 |
3 |
transfer_waiter |
TransferWaiter
|
正在將現有的 Proxy 轉移至這個節點。這個節點會等候對等點聯絡。 |
ZirconHandle 嚴格
定義於 fuchsia.overnet.protocol/zircon_proxy.fidl
要進行 Proxy 處理的單一控制代碼。系統只支援部分 Zircon 類型。
序數 | Variant | 類型 | 說明 |
---|---|---|---|
1 |
channel |
ChannelHandle
|
經 Proxy 處理的管道。 |
2 |
socket |
SocketHandle
|
有 Proxy 的通訊端。 |
3 |
event_pair |
EventPairHandle
|
代理事件配對。 |
帳單
頻道權利嚴格
類型:uint32
定義於 fuchsia.overnet.protocol/zircon_proxy.fidl
頻道權利。 Overnet 會將權限視為個別物件的類型,以減少可透過傳輸格式進行通訊的內容空間。系統會一律假設轉移權利。
名稱 | 值 | 說明 |
---|---|---|
閱讀 |
1 | |
寫入 |
2 |
EventPairRights 嚴格
類型:uint32
定義於 fuchsia.overnet.protocol/zircon_proxy.fidl
事件配對權限。Overnet 會將權限視為個別物件的類型,以減少可透過傳輸格式進行通訊的內容空間。系統會一律假設轉移權利。
名稱 | 值 | 說明 |
---|---|---|
DO_NOT_USE |
2147483648 |
信號嚴格
類型:uint32
定義於 fuchsia.overnet.protocol/zircon_proxy.fidl
可傳播的信號。這些 Pod 經過刻意挑選和 Zircon 中定義的位元不同,藉此強制存在對應程式碼,並盡可能降低 Zircon ABI 意外成為 Overnet 通訊協定的機率。
名稱 | 值 | 說明 |
---|---|---|
USER_0 |
1 | |
USER_1 |
2 | |
USER_2 |
4 | |
USER_3 |
8 | |
USER_4 |
16 | |
USER_5 |
32 | |
USER_6 |
64 | |
USER_7 |
128 |
SocketRights 嚴格
類型:uint32
定義於 fuchsia.overnet.protocol/zircon_proxy.fidl
通訊端權限。 Overnet 會將權限視為個別物件的類型,以減少可透過傳輸格式進行通訊的內容空間。系統會一律假設轉移權利。
名稱 | 值 | 說明 |
---|---|---|
閱讀 |
1 | |
寫入 |
2 |
業者
名稱 | 值 | 類型 | 說明 |
---|---|---|---|
MAX_SERVICE_NAME_LENGTH |
fuchsia.io/MAX_NAME_LENGTH
|
uint64 |
|
TRANSFER_KEY_LENGTH |
16
|
uint32 |
轉移金鑰的長度。 |
別名
名稱 | 值 | 說明 |
---|---|---|
TransferKey |
array [TRANSFER_KEY_LENGTH ] |
將串流端點從一個節點移至另一個節點時,會使用移轉金鑰。它會識別單筆傳輸,因此不得重複,因此,傳輸結束時應捨棄。 |