Hello. Want to know does ICE serialized objects are being put in HTTP in RPC environment. ? or it goes as serialized buffer ?.
Ice serialize data using Ice encoding into a stream, and this stream is send over the wire using one of the supported transports.
If you want to better understand how the encoding of messages works, you should take a look at the Ice protocol chapter in the Ice Manual.
For a list of the supported transports see https://doc.zeroc.com/ice/3.7/client-server-features/transports
Thanks, however my question was the ICE encoding does not put serialized data into a HTTP protocol ?.
The Ice protocol is an application layer protocol, just like http: see https://en.wikipedia.org/wiki/Internet_protocol_suite#Application_layer
The Ice protocol does not depend on http. The Ice protocol is implemented over various transport protocols, such as TCP (with or without an additional TLS layer), UDP, Bluetooth RFCOMM and WebSocket.
WebSocket (https://en.wikipedia.org/wiki/WebSocket) upgrades an http connection to a binary WebSocket connection. We then use the Ice protocol over this WebSocket connection:
This allows you to use http/WebSocket-aware proxies and firewalls to manage your Ice/WebSocket/TCP connections.
I guess you may see this as sending Ice protocol messages over http, but it's really over WebSocket, not plain http.
Then in terms of serialization, the Ice serialization format is called the "Ice encoding" and is totally independent of http. Ice puts byte sequences encoded using the Ice encoding into Ice protocol messages, and then send these messages over TCP, WebSocket (etc.) connections.
I hope this is clearer now!