You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
struct PerServerCID {
uint8_t version; // hard-coded to zero
uint16_t process_id : 4; // for forwarding packets to the correct process
uint16_t thread_id : 12; // for forwarding packet to the correct thread
uint32_t conn_id; // unique ID per connection
uint8_t path_id; // path id
};
struct CIDPlaintext {
uint32_t server_id[4]; // for forwarding packets to the correct server
uint32_t zero;
PerServerCID per_server;
};
CID = AES_ECB(key_id || AES_ECB(key, CIDPlaintext))
Design requirements:
use 4-byte server ID (to store internal IP address of each server)
4-byte zero to detect bogus CIDs
8-byte per-server CID to support 9-byte CID when running on a single server (using 64-bit cipher)
encode path_id directly, to avoid adding multiple entries to the CID -> connection hashmap
The text was updated successfully, but these errors were encountered:
Using a structure like below:
Design requirements:
The text was updated successfully, but these errors were encountered: