Szótár - P

PAD: X.25 hálózatoknál fontos szolgáltatás a nem csomagkapcsolt hálózatokkal való illesztést biztosító a csomagösszeállítás-felbontás PAD (Packet Assembly-Disassembly) funkció. Ez a szolgáltatás az előfizető bit és karakterfolyamait (pl. egy terminál jeleit) csomagokká alakítja illetve visszaalakítja). Ez teszi lehetővé hogy a karakter üzemmódú terminálok csomag üzemmódú DTE-kel kommunikáljanak.

párhuzamos átvitel: az információt általában bitcsoportos alakok hordozzák. Ha egy ilyen bitcsoportot egyszerre tudunk átvinni, akkor az információ átviteli sebessége nagyobb lesz. Ehhez azonban annyi, biteket átvivő adatutat kell az ADÓ és a VEVŐ között kialakítani, ahány bitből áll a bitcsoport. Természetesen külön vezeték(ek) szükségesek a ADÓ-VEVŐ szinkronizmus megvalósítására is. Ügyelni kell a vezetékek helyes sorrendjére is. Mivel ez a kialakítás jelentősen növeli az összeköttetés költségét és csökkenti a megbízhatóságot, ezért általában ezt az ún. párhuzamos átvitelt, csak kis távolságokra, illetve készülékek belsejében elhelyezkedő részegységek összekapcsolására használják. Ilyen megoldással működnek a számítógépek adat-, vezérlő- és címbuszai, vagy perifériák esetén a nyomtató, szkenner.

passzív illesztő: két, az üvegszálra kapcsolódó csatlakozóból áll. Az egyik csatlakozón egy LED dióda, a másik csatlakozón egy fotódióda van. Az illesztő teljesen passzív, segítségével jeleket tudunk a fénykábelből kivenni illetve jeleket tudunk a kábelbe bejuttatni. Az illesztés természetesen fényveszteséggel (és így csillapítással) jár, ezért meg kell határozni, hogy adott távolságon hány darab használható

password: Angol szó, jelentése: jelszó.

passzív sínkábel: ISDN-nél az NT1 dobozán lévő csatlakozóba egy passzív sínkábel illeszthető be. A kábelhez nyolc eszköz — ISDN telefonok, terminálok, riasztók, és egyéb más berendezések — csatlakoztatható. A passzív sínen lévő összes eszköznek címezhetőnek kell lennie, azaz egyedi címmel kell rendelkeznie. Az NT1-ben lévő sínhozzáférés vezérlő, ha egyszerre több eszköz is sínre akar kapcsolódni, akkor a versenyhelyzetet fel tudja oldani.

PCX: A PCX a ZSoft Corporation által látrehozott ZSoft IBM PC Paintbrush képformátumot jelöli. A PCX formátum szabványos VGA színkiosztást használ.

peer-to-peer: A hálózati eszközök kapcsolatában az ügyfél-kiszolgáló modell melletti másik megoldási lehetőség az egyenrangú kapcsolat. Vagyis az eszközök összekapcsolhatók a demokrácia szabályai alapján: minden gép egyenrangú, és erőforrásainak egy részét bocsátja a hálózaton keresztül a többi gép számára. Ezek az ún. egyenrangú, vagy peer-to-peer hálózatok. Ilyen hálózatokban is elképzelhetők, hogy az egyik gép csak szerverként működik. Ezt azért fontos megjegyezni, mert nem a gépek információ-szolgáltatásban nyújtott szerepe a döntő, hanem az, hogy az egyenrangúság értelmében bármelyik lehet ügyfél és szolgáltató.

PGP: A PGP betűszó, az angol "Pretty Good Privacy" rövidítése. A PGP elektronikus üzenetek titkosítását teszi lehetővé. Két kulccsal működik: az egyik nyilvános, ezzel lehet az üzeneteket kódolni. Aki titkosított üzenetet szeretne kapni, közzéteszi nyilvános kulcsát, és mindenki, aki neki írni akar, ezzel kódolhatja bizalmas üzenetét. A kódolt üzenet visszafejtése csak a második, titkos kulccsal lehetséges – ezt csak az üzenetek címzettje ismeri. A titkos kulcs nélkül az üzenet dekódolása még profi kódtörők számára is reménytelen feladat. Számos ország – nemzetbiztonsági okokra hivatkozva – korlátozni igyekszik a PGP és a hasonló eljárások elterjedését.

piggy-back: Kétirányú protokolloknál egy egyszerű megoldással az átviendő keretek számát csökkenthetjük: bármelyik irányba tartó adatkeretre ráültethetjük az előző ellenirányú adatkeret nyugtáját. Ezt szokták ráültetési (piggy-back) technikának is hívni. Hogy egy nyugta akkor is visszajusson, ha éppen nincs visszafelé küldött adatkeret, célszerű egy adott időzítés lejártakor a VEVŐ-nek önállóan útnak indítani. Persze, ha az adó eltérő időzítése miatt újra elküldi a keretet, akkor ez problémát jelent.

Kétirányú protokoll

plug-in (beépülő modul): Olyan szoftveres modul, amely lehetővé teszi a böngészőprogramok számára, hogy a hálózatról érkező, speciális formátumú adatokat (mozgóképet, hangot, "kézbevehető" molekulákat, tördelt folyóiratcikkeket, stb.) megjelenítsék. A legtöbb plug-in ingyenesen letölthető, és telepítése többé-kevésbé automatikus.

point-to-point: Két pont közötti csatornával rendelkező alhálózat-nál (pont-pont összeköttetés), amikor egy vevő megkapja a csomagot és az nem neki szól, akkor azt továbbadja egy következő pont-pont összeköttetésen keresztül. Ezért az ilyen típusú hálózatokat más néven szokták két pont közötti (point-to-point), vagy tárol és továbbít (store-and-forward ) hálózatoknak nevezni.

polling: Mi történik, ha a terminálokat egyszerre akarják használni? Nyilvánvalóan valamilyen hozzáférési elvet kell alkalmazni. A hagyományos módszer szerint egy terminál mindaddig nem juthat szóhoz, amíg a vezérlő meg nem szólítja. E megoldásnak lekérdezés (polling) az általánosan elfogadott neve.

POP: Angol mozaikszó a Post Office Protocol (postaprotokoll) kifejezés kezdőbetűiből. A POP azt definiálja, hogy a hálózatokban hogyan kell a hálózat központi levelesládájába beérkező üzeneteket szétosztani — azaz kézbesíteni — a hálózat helyi felhasználóinak a címére. Erre van szükség például egy interneten lévő intranet esetén is, amikor a kívülről érkező elektronikus leveleket az intraneten szeretnénk szétosztani.

POP kiszolgáló: A POP protokoll alapján működő, POP szolgáltatást ellátó kiszolgáló neve, ami lehet program vagy számítógép is.

port: A port hálózatra kötött számítógépek egymással való kommunikációjának csatlakozási pontja. Ez a fogalom az internet, illetve a unix operációs rendszerek megjelenésével terjedt el. Lényege, hogy egy kiszolgáló gép különböző szolgáltatásait a gépen definiált különböző portokra (kapuk) csatlakozva érhetjük el. A rácsatlakozás persze nem fizikai, hanem logikai értelemben történik. Minden szolgáltatásnak egyedi portszáma van, amelyet szabvány rögzít. Olyan ez, mint amikor a felvonóval egy adott emeletre szeretnénk feljutni. A sikeres kommunikációhoz a kliens oldal is kap egy portszámot, amire az a kikötés vonatkozik, hogy nem lehet semmilyen szolgáltatás, vagy más kliens által már lefoglalt port száma.

pózolás (spoofing): Olyan rendszerhozzáférési törekvés, amelyben a jogtalan felhasználó úgy tesz, mintha ő egy jogos volna. (Szinonim kifejezések: megszemélyesítés, álcázás, utánzás)

PPP: Point to Point Protocol. A SLIP/PPP kapcsolat egy telefonvonalon keresztüli kapcsolódás. Ilyenkor egy modem és a telefonvonalon TCP/IP szerű kapcsolatot megvalósító SLIP/PPP (SLIP - Serial Line Interface Protocol, PPP - Point to Point Protocol) protokoll szükséges. Számítógépünk a vonal másik végén egy Internetre kapcsolódó kiszolgáló számítógépen keresztül egy IP címet hordozó hálózatra kapcsolt géppé válik.

protocol stack, protocol suite: Az olyan protokollgyűjteményt, amely minden rétegben csak egyetlen protokollt tartalmaz protokollkészletnek (protocol suite) vagy más néven protokoll-veremnek (protocol stack) nevezünk. Ilyen például a MAP, TOP, illetve az Internet protokoll készlete.

protokoll: A kommunikációnál használt szabályok és megállapodások összességét protokollnak (protocol) nevezzük.

protokollkészlet = protocol suite

protokoll-verem = protocol stack

proxy: Angol szakkifejezés. Magyarul talán úgy lehetne fordítani: közvetítő, megbízott. A proxy lényegében egy olyan kiszolgáló, amely egy másik kiszolgálót helyettesít. Helyi hálózatokon általában valmilyen más funkcióval (például tűzfal) együtt működtetik. Az Interneten arra használják, hogy a szolgáltatások elérésére irányuló kéréseket ne saját maga válaszolja meg, hanem irányítsa azokat egy közeli (innen a név: proxy — közelben lévő) kiszolgálóhoz, amely az adott szolgáltatással rendelkezik és nagyobb teljesítményt produkál.

PVC: (Permanent Virtual Circuit). Állandó virtuális áramkör. A csomagkapcsolású hálózatok egyik alapvető csomagtípusú szolgálata, amely két DTE-t állandóan összeköt logikai csatornával. Ez biztosítja a csomagváltások során a sorrendhelyességet.

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