There are three major classes related to web cache, as it is in the real world: client (browser), server, and cache. Because they share a common feature, i.e., the https protocol, they are derived from the same base class https (Name of OTcl class, it's called httpsApp in C++). For the following reasons, it's not a real Application. First, an https object (i.e., client/cache/server) may want to maintain multiple concurrent https connections, but an Application contains only one agent_. Also, an https object needs to transmit real data (e.g., https header) and that's provided by TcpApp instead of any Agent. Therefore, we choose to use a standalone class derived from TclObject for common features of all https objects, which are managing https connections and a set of pages. In the rest of the section, we'll discuss these functionalities of https. In the next three sections, we'll in turn describe https client, cache and server.