m�n 2003-02-24 klockan 16.10 skrev atit_ldce: > which function will handle ICP_HIT message? > > means which function actually sends HTTP request to the peer which has replied with > ICP_HIT.
These two functions are separate. First ICP is used to determine which peers are alive and if any of these have the object. Then peer selection selects the most suitable of the peers found. > icpHandleIcpV2 will filter ICP message types? Yes, and record the status of the reply. > can u explain from this how flow works until http request to peer is send? Then a ICP HIT reply is received this for the neighbor by calling neighborsUdpAck. If this finds a request waiting for this ICP message then a callback is made into the module who initiated the ICP pinging (the ICP pingning was initiated by calling neighborsUdpPing) neighborsUdpPing is called from peer_select.cc, which is the module which is responsible for selecting which peer to use for the request based on the information available (including results of ICP pings). The function in neighborsUdpPing which acts on ICP messages is peerHandlePingReply. > i also want explaination about following function > enter_suid() > leave_suid() These two is used when Squid needs to perform privileged operations which may require root access. > icpCheckUdpHit This function checks is a existing store entry is valid for responding with a ICP HIT or not.. > icpSetCacheKey This calculates the ICP message key for a new ICP query. The ICP message key is used to tell replies to different requests for the same URL apart from each other. > and about following structure(s) > > struct _peer This struct defines a cache_peer. Mostly related to the cache_peer directive in squid.conf. > struct _acl_access This struct defines a access list such as http_access. Each entry is one access rule from squid.conf. > struct statCounter.icp This struct keeps the ICP related statistics counters shown in cachemgr and the SNMP interfaces.. -- Henrik Nordstrom <[EMAIL PROTECTED]> MARA Systems AB, Sweden
