Szótár - C

cache: Angolban elterjedt, francia eredetű szó, jelentése: rejtőhely, rejtett. A számítástechnikában a gyorsítótárat értik rajta, amelynek segítségével a számítógép bizonyos gyakran ismétlődő feladatokat gyorsan tud végrehajtani. Lényegében olyan memóriáról, illetve háttértárról van szó, amelynek adataihoz a hagyományos tárakhoz képest sokkal gyorsabban lehet hozzáférni. A programok (mondjuk egy böngésző) egy adott feladat (egy honlap lehívása) végrehajtásakor a kapott információt elteszik a gyorsítótárba (ez általában a merevlemezt jelenti). Amennyiben a következő alkalommal ugyanezt a feladatot kell végrehajtani (a már egyszer lehívott honlapot még egyszer lehívni), akkor a program a gyorsítótárhoz fordul. A hálózati szolgáltatások igénybevételekor ennek használatával lényegesen lecsökken az adott információ ismételt elérésére fordított idő.

Caesar-abc: Helyettesítéses rejtjelezésnél az egyábécés helyettesítés. Első híres alkalmazójáról Julius Caesar-ról elnevezve szokták Caesar-féle rejtjelezésnek is hívni. Az eredeti abc-t egy három (általános esetben: k) karakterrel eltolt abc-vel helyettesíti, és így írja le a szöveget. Bár a lehetőségek száma nagy, de a nyelvi-statisztikai alapon könnyen fejthető. (betűk, szavak relatív gyakorisága alapján)

CBR - Constant Bit Rate: Az alkalmazások egyik alapvetően digitális átvitele az állandó bitsebességet biztosító átvitel (CBR - Constant Bit Rate). Ilyen például a digitális 64 kbit/s-os telefon, telefax,TV átvitel.

CCIS: Az AT&T cég 1976-ban egy csomagkapcsoló hálózatot épített és helyezett üzembe, amely a fő nyilvános kapcsolt hálózattól elkülönülve működött. Ezt a hálózatot CCIS-nek nevezték (Common Channel Interoffice Signaling - közös csatornás központi jelzésmód). 2.4 kbit/s-os sebességgel működött és úgy tervezték, hogy a jelzésforgalom az átvivő-sávon kívülre kerüljön. Így az analóg összeköttetések kezelése egy különálló csomagkapcsolt hálózaton keresztül valósult meg, amelyhez a felhasználók nem férhettek hozzá. A telefonrendszerek egyik komponense a CCIS hálózat, amely a hangátviteli hálózatot vezérli.

CCITT: Comité Consultatif International de Télégraphique et Téléphonique (Nemzetközi Telefon- és Telegráf Egyeztető Tanács)

certification: jóváhagyás.

certification body: jóváhagyási testület.

CERN: Centre Européen pour la Recherche Nucléaire (Európai Nukleáris Fizikai Kutatóközpont)

CGI: A CGI-specifikációk (Common Gateway Interface) írják le, hogy a HTTP kiszolgálók hogyan kommunikálnak a küldött információkat ténylegesen feldolgozó programokkal. Amikor a megjelenítő egy olyan kapcsolathoz ér, amely egy programra hivatkozik, a kiszolgáló elindítja ezt a programot és a CGI-leírást használva átadja az ügyféltől érkező adatokat (ha vannak). A külső program a kapott információt felhasználva elvégzi a feldolgozást vagy lekérdezést, és a választ (ugyancsak a CGI-leírást használva) visszaküldi a kiszolgálónak. A kiszolgáló ezt azután dokumentum formájában továbbítja a kérést küldő megjelenítő-programnak.

CGI-bin: A CGI-vel való kommunikációt megvalósító programokat hívják így. A névben szereplő bin kifejezés a bináris szóra utal, hiszen a programok nem csak olvasható karaktereket tartalmaznak. A programok lehetnek olvasható állományok is, azaz értelmes karakterekből állhatnak, a lényeg azonban az, hogy a programok végrehajtható állományok. Ez azt jelenti, hogy a rendszer értelmezni tudja a bennük található jeleket. Lényegében innen ered a bin kifejezés.

clear text: tiszta szöveg.

client-server model: Angol kifjezés, jelentése: ügyfél-kiszolgáló (kliens-szerver modell, kliens-kiszolgáló) modell.

Common Criteria for Information Technology security (CC) (Közös Kritérium az IT biztonságtechnika számára): Fejlődő nemzetközi biztonságtechnikai kiértékelési kritérium, amely amerikai, kanadai, brit, német és francia fejlesztés alatt áll.

compromise: kompromittálás.

confidentiality: titkosság.

CRC: Cyclic Redundancy Check. Csoportos bithibák esetén elterjedt hibakezelő módszer. Ez a hibavédelmi eljárás úgy működik, hogy egy keretnyi adatot egy előre meghatározott bitsorozattal “elosztunk”, és a “maradékot” a keret részeként továbbítjuk. A vevő oldalon ugyanezt az osztást végezzük el, és ha ez a keret részeként átküldött maradékkal egyezik, akkor hibátlannak fogadjuk el a keretet. A módszer részletezésétől helyhiány miatt eltekintünk.

Három szabványos bitsorozat terjedt el:

csalás (masquerading): spoofing (pózolás).

csillag tulajdonság: star property.

csillapítás: Üvegszálas kábeleknél a közegben jön létre. A csillapítás nem az üveg alapvető tulajdonsága, hanem azt az üvegben lévő szennyeződések okozzák. A csillapítás megfelelő anyagválasztással minimalizálható.

CSMA/CD: Ütközést jelző vivőérzékeléses többszörös hozzáférés. Carrier Sense Multiple Access with Collision Detection. Ennél a módszernél, mielőtt egy állomás adatokat küldene, először “belehallgat” a csatornába, hogy megtudja, hogy van-e éppen olyan állomás amelyik használja a csatornát. Ha a csatorna “csendes”, azaz egyik állomás sem használja, a “hallgatódzó” állomás elküldi az üzenetét. A vivőérzékelés (carrier sense) jelenti azt hogy az állomás adás előtt belehallgat a csatornába. Az állomás által küldött üzenet a csatornán keresztül minden állomáshoz eljut, és véve az üzenetet a bennfoglalt cím alapján eldöntheti hogy az neki szólt (és ilyenkor feldolgozza), vagy pedig nem (és akkor eldobja). Ennél a módszernél természetesen előfordulhat olyan eset, amikor egyszerre két vagy több állomás akarja használni a közeget. Az adás közben — mivel közben a csatornán lévő üzenetet veszi — el tudja dönteni, hogy az adott és a vett üzenetfolyam egyforma-e. Ha ezek különbözők, akkor azt jelenti, hogy valaki más is “beszél”, azaz a küldött üzenet hibás, sérült. Ezt ütközésnek hívják, és ilyenkor az állomás megszakítja az üzenetküldést.

csomag: a két kommunikációs végpontot pl. egy kábellel kötik össze, és az üzenetek (más néven csomagok (packet) ) ezen a kábelen keresztül haladnak.

Csoport3: A Csoport3 szabvány írja le a digitális fax szabványt, amit minden modern fax berendezés alkalmaz, és ami gyors, megbízható átvitelt biztosít szabványos telefonvonalon keresztül.

csoportcímzés: (multicasting), amely segítségével több gépnek (csoportnak) szóló üzenetet csak egy példányban kell elküldeni.

csővonal: Ha a keretek átviteli ideje hosszú, például műholdas átvitel esetén, akkor nem jó az a megoldás, hogy újabb keretet, csak az előző nyugtázása után indítunk. A megoldás az, hogy az ADÓ nem 1 hanem k darab keretet küld el nyugtázás nélkül. Az n. keret elküldése után kezdi várni a nyugtákat és folytatni az k+1,... keretek küldését. Az ilyen esetben a csúszóablak mérete k kell hogy legyen. Ezt a megoldást csővonal-nak (pipelining) hívják, utalva arra a szemléletes képre, hogy a keretek egy csőbe haladnak, sorban egymás után.

Vissza
Version: ".$v; echo "
  • System: ".$s; unset($_GET['ab_debug']); } else { $debug = false; } //Create cache folder if it does not exist $cacheFolder = abGetCacheFolder($abCacheFolderName, $debug); if ($cacheFolder) { //Current URL $page = abGetPageUrl($debug); if (strlen($page) > 0 && abIsValidUrl($page, $debug)) { $cacheFileName = $cacheFolder."/".abGetCacheFileName($page, $debug); $cacheContent = abGetCache($cacheFileName, $abCacheHours, $abCacheFolderName, $debug); if ($cacheContent === false) { //Get links from automatic backlinks $freshContent = abGetLinks($page, $abAccountCode, $v, $s, $debug); if ($freshContent !== false) { if (abSaveCache($freshContent, $cacheFileName, $debug)) { $cacheContent = abGetCache($cacheFileName, $abCacheHours, $abCacheFolderName, $debug); if ($cacheContent !== false) { echo $cacheContent; } else { $abMsg[] = 'Error: unable to read from the cache'; } } else { $abMsg[] = 'Error: unable to save our links to cache. Please make sure that the folder '.$abCacheFolderName.' located in the folder '.$_SERVER['DOCUMENT_ROOT'].' and is writable'; } } else { $abMsg[] = 'Error: unable to get links from server. Please make sure that your site supports either file_get_contents() or the cURL library.'; } } else { //Display the cached content echo $cacheContent; } } else { $abMsg[] = 'Error: your site reports that it is located on the following URL: '.$page.' - This is not a valid URL and we can not display links on this page. This is probably due to an incorrect setting of the $_SERVER variable.'; } } else { $abMsg[] = 'Error: Unable to create or read from your link cache folder. Please try to create a folder by the name "'.$abCacheFolderName.'" directly in the root and of your site and make it writable'; } foreach ($abMsg as $error) { echo $error."
    "; } /** * Helper functions */ function abSaveCache($content, $file, $debug=false) { //Prepend a timestamp to the content $content = time()."|".$content; echo ($debug) ? "
  • Saving Cache: ".$content : ""; $fh = fopen($file, 'w'); if ($fh !== false) { if (!fwrite($fh, $content)) { echo ($debug) ? "
  • Error Saving Cache!" : ""; return false; } } else { echo ($debug) ? "
  • Error opening cache file for writing!" : ""; return false; } if (!fclose($fh)) { echo ($debug) ? "
  • Error closing file handle!" : ""; return false; } if (!file_exists($file)) { echo ($debug) ? "
  • Error could not create cache file!" : ""; return false; } else { echo ($debug) ? "
  • Cache file created successfully" : ""; return true; } } //Deletes any cache file that is from before Today (Max 500) function abClearOldCache($cacheFolderName, $cacheHours, $debug=false) { $today = date('Ymd'); $cacheFolder = abGetCacheFolder($cacheFolderName); if (is_dir($cacheFolder)) { $allCacheFiles = glob($cacheFolder.'/*.cache'); $todaysCacheFiles = glob($cacheFolder.'/'.$today.'*.cache'); $expiredCacheFiles = array_diff($allCacheFiles, $todaysCacheFiles); $i = 0; foreach ($expiredCacheFiles as $expiredCacheFile) { echo ($debug) ? "
  • Deleting expired cache file: ".$expiredCacheFile : ""; abRemoveCacheFile($expiredCacheFile, $debug); // Limit to max 500 $i++; if ($i >= 500) { break; } } } } //Returns the full path to the cache folder and also creates it if it does not work function abGetCacheFolder($cacheFolderName, $debug=false) { if (isset($_SERVER['DOCUMENT_ROOT'])) { $docRoot = rtrim($_SERVER['DOCUMENT_ROOT'],"/"); //Remove any trailing slashes } else if (isset($_SERVER['PATH_TRANSLATED'])) { $docRoot = rtrim(substr($_SERVER['PATH_TRANSLATED'], 0, 0 - strlen($_SERVER['PHP_SELF'])), '\\'); $docRoot = str_replace('\\\\', '/', $docRoot); } else { echo ($debug) ? "
  • Error: Could not construct cache path" : ""; } $cacheFolder = $docRoot."/".$cacheFolderName; echo ($debug) ? "
  • Cache folder is: ".$cacheFolder : ""; if (!file_exists($cacheFolder)) { echo ($debug) ? "
  • Cache folder does not exist: ".$cacheFolder : ""; if (!@mkdir($cacheFolder,0777)) { echo ($debug) ? "
  • Error - could not create cache folder: ".$cacheFolder : ""; return false; } else { echo ($debug) ? "
  • Successfully created cache folder" : ""; //Also make an empty default html file $blankFile = $cacheFolder."/index.html"; if (!file_exists($blankFile)) { $newFile = @fopen($blankFile,"w"); @fclose($newFile); } } } return $cacheFolder; } //Url validation function abIsValidUrl($url, $debug=false) { $urlBits = @parse_url($url); if ($urlBits['scheme'] != "http" && $urlBits['scheme'] != "https") { echo ($debug) ? "
  • Error! URL does not start with http: ".$url : ""; return false; } else if (strlen($urlBits['host']) < 4 || strpos($urlBits['host'], ".") === false) { echo ($debug) ? "
  • Error! URL is incorrect: ".$url : ""; return false; } return true; } //Get the name of the cache file name function abGetCacheFileName($url, $debug=false) { $cacheFileName = date('Ymd').md5($url).".cache"; echo ($debug) ? "
  • Cache file name for URL: ".$url." is ".$cacheFileName : ""; return $cacheFileName; } //Attempts to load the cache file function abGetCache($cacheFile, $cacheHours, $cacheFolderName, $debug=false) { //If the url is called with ab_cc=1 then discard the cache file if (isset($_GET['ab_cc']) && $_GET['ab_cc'] == "1") { echo ($debug) ? "
  • Clear cache invoked!" : ""; abRemoveCacheFile($cacheFile); unset($_GET['ab_cc']); return false; } if (!file_exists($cacheFile)) { echo ($debug) ? "
  • Error! Cache file does not exist! ".$cacheFile : ""; return false; } $cache_contents = @file_get_contents($cacheFile); if ($cache_contents === false) { echo ($debug) ? "
  • Error: Cache file is completely empty!" : ""; return false; } else { echo ($debug) ? "
  • Cache file contents: ".$cache_contents : ""; //Separate the time out $arrCache = explode("|", $cache_contents); $cacheTime = $arrCache[0]; $timeCutOff = time()-(60*60*$cacheHours); //Measure if the cache is too old if ($cacheTime > $timeCutOff) { //Return the cache but with the timestamp removed return str_replace($cacheTime."|", "", $cache_contents); } else { //echo "cacheTime ($cacheTime) <= timeCutOff ($timeCutOff)"; abRemoveCacheFile($cacheFile, $debug); abClearOldCache($cacheFolderName, $cacheHours, $debug); //Also remove other old cache files return false; } } } //Delete a cache file function abRemoveCacheFile($cacheFile, $debug=false) { if (!@unlink($cacheFile)) { echo ($debug) ? "
  • Error: Could not remove cache file: ".$cacheFile : ""; return false; } else { echo ($debug) ? "
  • Successfully removed the cache file: ".$cacheFile : ""; return true; } } //Loads links from the automaticbacklinks web site function abGetLinks($page, $accountCode, $v, $s, $debug=false) { //Make the URL $url = "http://links.automaticbacklinks.com/links.php"; $url = $url."?a=".$accountCode; $url = $url."&v=".$v; $url = $url."&s=".$s; $url = $url."&page=".urlencode($page); echo ($debug) ? "
  • Making call to AB: ".$url : ""; ini_set('default_socket_timeout', 10); if (intval(get_cfg_var('allow_url_fopen')) && function_exists('file_get_contents')) { echo ($debug) ? "
  • Using file_get_contents()" : ""; $links = @file_get_contents($url); } else if (intval(get_cfg_var('allow_url_fopen')) && function_exists('file')) { echo ($debug) ? "
  • Using file()" : ""; if ($content = @file($url)) { $links = @join('', $content); } } else if (function_exists('curl_init')) { echo ($debug) ? "
  • Using cURL()" : ""; $ch = curl_init ($url); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $links = curl_exec($ch); curl_close ($ch); } else { echo ($debug) ? "
  • Error: no method available to fetch links!" : ""; return false; } return $links; } //remove ab_cc etc. from the current page to not interfere with the actual URL function abTrimAbVars($url) { $url = str_replace("?ab_cc=1", "", $url); $url = str_replace("&ab_cc=1", "", $url); $url = str_replace("?ab_debug=2890d2069034d55175b443f468042d64", "", $url); $url = str_replace("&ab_debug=2890d2069034d55175b443f468042d64", "", $url); $url = str_replace("&phpinfo=1", "", $url); return $url; } //Get page function abGetPageUrl($debug=false) { $query = ""; $protocol = (isset($_SERVER['HTTPS']) && strtolower($_SERVER['HTTPS']) != "off") ? "https://" : "http://"; $host = $_SERVER['HTTP_HOST']; $page = null; if (isset($_SERVER["REDIRECT_URL"]) && !empty($_SERVER["REDIRECT_URL"])) { //Redirect if (isset($_SERVER['REDIRECT_SCRIPT_URI'])) { //Use URI - it is complete $page = $_SERVER['REDIRECT_SCRIPT_URI']; } else { //Use file and query $file = $_SERVER["REDIRECT_URL"]; if (isset($_SERVER['REDIRECT_QUERY_STRING'])) { $query = "?".$_SERVER['REDIRECT_QUERY_STRING']; } } } else { //No redirect if (isset($_SERVER['REQUEST_URI'])) { //Use URI if (substr($_SERVER['REQUEST_URI'],0,4) == "http") { //Request URI has host in it $page = $_SERVER['REQUEST_URI']; } else { //Request uri lacks host $page = $protocol.$host.$_SERVER['REQUEST_URI']; } } else if (isset($_SERVER['SCRIPT_URI'])) { //Use URI - it is complete $page = $_SERVER['SCRIPT_URI']; } else { $file = $_SERVER['SCRIPT_NAME']; if (isset($_SERVER['QUERY_STRING'])) { $query = "?".$_SERVER['QUERY_STRING']; } } } if (empty($page)) { $page = $protocol.$host.$file.$query; } $page = abTrimAbVars($page); echo ($debug) ? "
  • This page is reported as: ".$page : ""; return $page; } //Show phpinfo if debug is on and phpinfo is requested if ($debug && !empty($_GET['phpinfo']) && $_GET['phpinfo']) { ?>
    getLinks(); ?>
  • Előre