ਜਾਣੋ ਕਿ ਵਿੰਟ ਸਰਫ ਦੀਆਂ TCP/IP ਸੰਬੰਧੀ ਚੋਣਾਂ ਨੇ ਕਿਵੇਂ ਵੱਖ-ਵੱਖ ਨੈੱਟਵਰਕਾਂ ਨੂੰ ਆਪਸੀ ਤੌਰ ਤੇ ਜੋੜਨ ਯੋਗ ਬਣਾਇਆ ਅਤੇ ਬਾਅਦ ਵਿੱਚ ਇਮੇਲ, ਵੈੱਬ ਤੋਂ ਲੈ ਕੇ ਕਲਾਉਡ ਐਪਸ ਤੱਕ ਦੇ ਗਲੋਬਲ ਸੌਫਟਵੇਅਰ ਪਲੇਟਫਾਰਮ ਬਣਨ ਦੀ ਆਧਾਰਸ਼ੀਲਾ ਪੇਸ਼ ਕੀਤੀ।

ਬਹੁਤ ਸਾਰੇ ਲੋਕ ਇੰਟਰਨੈੱਟ ਦਾ ਅਨੁਭਵ ਉਤਪਾਦਾਂ ਰਾਹੀਂ ਕਰਦੇ ਹਨ: ਇੱਕ ਵੈੱਬਸਾਈਟ ਜੋ ਤੁਰੰਤ ਲੋਡ ਹੋ ਜਾਏ, ਇੱਕ ਵਿਡੀਓ ਕਾਲ ਜੋ (ਅਕਸਰ) ਚੱਲੇ, ਜਾਂ ਇੱਕ ਭੁਗਤਾਨ ਜੋ ਸਕਿੰਟਾਂ ਵਿੱਚ ਕਲੀਅਰ ਹੋ ਜਾਏ। ਇਨ੍ਹਾਂ ਅਨੁਭਵਾਂ ਦੇ ਥੱਲੇ ਪ੍ਰੋਟੋਕੋਲ ਹੁੰਦੇ ਹਨ—ਸਾਂਝੇ ਨਿਯਮ ਜੋ ਵੱਖ-ਵੱਖ ਸਿਸਟਮਾਂ ਨੂੰ ਐਸਾ ਸੁਨੇਹਾ ਅਦਲਾ-ਬਦਲੀ ਕਰਨ ਦੇ ਯੋਗ ਬਣਾਉਂਦੇ ਹਨ ਕਿ ਉਹ ਵਰਤੇ ਜਾ ਸਕਣ।
ਇੱਕ ਪ੍ਰੋਟੋਕੋਲ ਇੱਕ ਆਮ ਭਾਸ਼ਾ ਅਤੇ ਆਚਰਨ ਦੇ ਨਿਯਮਾਂ ਵਰਗਾ ਹੈ: ਸੁਨੇਹਾ ਕਿਵੇਂ ਦਿਖੇਗਾ, ਗੱਲ-ਬਾਤ ਕਿਵੇਂ ਸ਼ੁਰੂ/ਖ਼ਤਮ ਹੋਵੇਗੀ, ਕੁਝ ਗੁੰਮ ਹੋਵੇ ਤਾਂ ਕੀ ਕਰਨਾ ਹੈ, ਅਤੇ ਕਿਸ ਲਈ ਸੁਨੇਹਾ ਹੈ ਇਹ ਕਿਵੇਂ ਪਛਾਣਿਆ ਜਾਵੇ। ਬਿਨਾਂ ਸਾਂਝੇ ਨਿਯਮਾਂ ਦੇ, ਹਰ ਕਨੈਕਸ਼ਨ ਇੱਕ ਅਲੱਗ ਸਮਝੌਤਾ ਬਣ ਜਾਂਦਾ ਹੈ ਅਤੇ ਨੈੱਟਵਰਕ ਛੋਟੇ ਗੇੜੇ ਤੋਂ ਬਾਹਰ ਨਹੀਂ ਫੈਲ ਸਕਦੇ।
ਵਿੰਟ ਸਰਫ ਨੂੰ ਅਕਸਰ “ਇੰਟਰਨੈੱਟ ਦੇ ਪਿਤਾ” ਵਜੋਂ ਮਨਿਆ ਜਾਂਦਾ ਹੈ, ਪਰ ਇਸ ਨੂੰ ਇੱਕ ਟੀਮ ਦੇ ਹਿੱਸੇ ਵਜੋਂ ਦੇਖਣਾ ਵਧੇਰੇ ਸਹੀ ਹੈ ਜੋ ਪ੍ਰੈਕਟਿਕਲ ਡਿਜ਼ਾਈਨ ਫੈਸਲੇ—ਖਾਸ ਕਰਕੇ TCP/IP ਦੇ ਆਸਪਾਸ—ਕਰ ਕੇ „ਨੈੱਟਵਰਕਾਂ‟ ਨੂੰ ਇੱਕ ਇੰਟਰਨੈੱਟਵਰਕ ਵਿੱਚ ਬਦਲ ਦਿੱਤਾ। ਇਹ ਚੋਣਾਂ ਕਦੇ ਲਾਜਮੀ ਨਹੀਂ ਸਨ। ਉਹ ਟਰੇਡ-ਆਫ਼ਾਂ ਨੂੰ ਦਰਸਾਉਂਦੀਆਂ ਸਨ: ਸਾਦਗੀ ਬਨਾਮ ਫੀਚਰ, ਲਚਕੀਲਾਪਨ ਬਨਾਮ ਨਿਯੰਤਰਣ, ਤੇ ਤੇਜ਼ ਅਪਨਾਏ ਜਾਣ ਦੀ ਲੋੜ ਬਨਾਮ ਪਰਫੈਕਟ ਗਰੰਟੀ।
ਅੱਜ ਦੇ ਗਲੋਬਲ ਪਲੇਟਫਾਰਮ—ਵੈੱਬ ਐਪਸ, ਮੋਬਾਈਲ ਸੇਵਾ, ਕਲਾਉਡ ਇੰਫਰਾਸਟਰੱਕਚਰ ਅਤੇ ਕਾਰੋਬਾਰਾਂ ਵਿਚਕਾਰ APIs—ਹੋਰ ਵੀ ਉਸੇ ਵਿਚਾਰ ਤੇ ਜੀਉਂਦੇ ਜਾਂ ਮਰਦੇ ਹਨ: ਜੇ ਤੁਸੀਂ ਸਹੀ ਹੱਦਬੰਦੀ ਸਥਿਰ ਕਰ ਦਿਓ, ਤਾਂ ਤੁਸੀਂ ਲੱਖਾਂ ਆਜ਼ਾਦ ਅਭਿਨੇਤਾਵਾਂ ਨੂੰ ਬਿਨਾਂ ਅਨੁਮਤੀ ਮੰਗਣ ਦੇ ਉਨ੍ਹਾਂ 'ਤੇ ਨਿਰਭਰ ਬਣਨ ਦੇ ਯੋਗ ਕਰ ਸਕਦੇ ਹੋ। ਤੁਹਾਡੇ ਫੋਨ ਨੇ ਸੰਸਾਰ ਦੇ ਦੂਜੇ ਪਾਸੇ ਸਰਵਰਾਂ ਨਾਲ ਗੱਲ ਕਰਨੀ ਇਸ ਲਈ ਸਮਭਵ ਹੁੰਦੀ ਹੈ ਨਾ ਕੇਵਲ ਕਿਉਂਕਿ ਹਾਰਡਵੇਅਰ ਤੇਜ਼ ਹੋਇਆ, ਪਰ ਇਸ ਲਈ ਵੀ ਕਿ ਨਿਯਮ ਅਜੇ ਵੀ ਇਸ ਕਦਰ ਸਥਿਰ ਰਹੇ ਕਿ ਨਵੀਨਤਾ ਉੱਪਰ ਬਣ ਸਕੀ।
ਇਹ ਸੋਚ ਉਹ ਘੜਨਾ ਹੈ ਜੋ “ਸਿਰਫ਼ ਸਾਫਟਵੇਅਰ ਬਣਾ ਰਹੇ ਹੋ” ਦੇ ਸਮੇਂ ਵੀ ਮਾਇਨੇ ਰੱਖਦੀ ਹੈ। ਉਦਾਹਰਣ ਵਜੋਂ, vibe‑coding ਪਲੇਟਫਾਰਮਾਂ ਜਿਵੇਂ Koder.ai ਤਦੋਂ ਸਫਲ ਹੁੰਦੇ ਹਨ ਜਦੋਂ ਉਹ ਇਕ ਛੋਟੀ ਪਰ ਸਥਿਰ ਪ੍ਰਿਟਿਵ (primitives) ਦੇ ਸਮੂਹ—ਪ੍ਰੋਜੈਕਟ, ਡਿਪਲੌਇਮੈਂਟ, ਵਾਤਾਵਰਣ, ਇੰਟੀਗਰੇਸ਼ਨ—ਦਿੰਦੇ ਹਨ ਅਤੇ ਟੀਮਾਂ ਨੂੰ ਕਿਨਾਰਿਆਂ 'ਤੇ ਤੇਜ਼ੀ ਨਾਲ ਅਦਿਟ ਕਰਨ ਦੇ ਯੋਗ ਛੱਡ ਦਿੰਦੇ ਹਨ—ਚਾਹੇ ਉਹ React ਫਰੰਟਐਂਡ, Go + PostgreSQL ਬੈਕਐਂਡ ਜਾਂ Flutter ਮੋਬਾਈਲ ਐਪ ਬਣਾਉਂਦੇ ਹੋਣ।
ਅਸੀਂ ਇਤਿਹਾਸ ਦਾ ਸੰਘੜੀ ਪਰਛੇਦ ਕਰਾਂਗੇ, ਪਰ ਧਿਆਨ ਡਿਜ਼ਾਈਨ ਫੈਸਲਿਆਂ ਅਤੇ ਉਹਨਾਂ ਦੇ ਨਤੀਜਿਆਂ ਤੇ ਰਹੇਗਾ: ਕਿਵੇਂ ਲੇਅਰਿੰਗ ਨੇ ਵਿਕਾਸ ਨੂੰ ਯੋਗ ਕੀਤਾ, ਕਿੱਥੇ “ਕਾਫੀ ਚੰਗਾ” ਡਿਲਿਵਰੀ ਨੇ ਨਵੇਂ ਐਪਲੀਕੇਸ਼ਨਾਂ ਨੂੰ ਖੋਲ੍ਹਿਆ, ਅਤੇ ਕਿਹੜੀਆਂ ਸ਼ੁਰੂਆਤੀ ਧਾਰਨਾਵਾਂ ਜ਼ਿਆਦਾ ਹੋ ਕੇ ਕਾਂਜੈਸ਼ਨ ਅਤੇ ਸੁਰੱਖਿਆ ਬਾਰੇ ਗਲਤ ਸਾਬਤ ਹੋਈਆਂ। ਲਕੜੀ ਦਾ ਮਕਸਦ ਪ੍ਰਾਇਗਮੈਟਿਕ ਹੈ: ਸਾਫ ਇੰਟਰਫੇਸ, ਇੰਟਰਓਪਰੇਬਿਲਿਟੀ ਅਤੇ ਖੁੱਲ੍ਹੇ ਟਰੇਡ-ਆਫ਼ ਦੀ ਸੋਚ ਨੂੰ ਮਾਡਰਨ ਪਲੇਟਫਾਰਮ ਡਿਜ਼ਾਈਨ ਵਿੱਚ ਲਗਾਉਣਾ।
“ਇੰਟਰਨੈੱਟ” ਬਣਨ ਤੋਂ ਪਹਿਲਾਂ ਬਹੁਤ ਸਾਰੇ ਨੈੱਟਵਰਕ ਸਨ—ਪਰ ਕੋਈ ਇਕ ਐਸਾ ਨੈੱਟਵਰਕ ਨਹੀਂ ਜੋ ਹਰ ਕੋਈ ਵਰਤ ਸਕੇ। ਯੂਨੀਵਰਸਿਟੀਆਂ, ਸਰਕਾਰੀ ਲੈਬਾਂ ਅਤੇ ਕੰਪਨੀਆਂ ਆਪਣੀਆਂ ਸਿਸਟਮ ਬਣਾਉਂਦੀਆਂ ਸਨ ਜੋ مقامی ਜ਼ਰੂਰਤਾਂ ਨੂੰ ਪੂਰਾ ਕਰਦੀਆਂ। ਹਰ ਨੈੱਟਵਰਕ ਕੰਮ ਕਰਦਾ ਸੀ, ਪਰ ਉਹ ਅਕਸਰ ਇਕੱਠੇ ਕੰਮ ਨਹੀਂ ਕਰਦੇ ਸਨ।
ਕਈ ਨੈੱਟਵਰਕ ਵਿਵਹਾਰਿਕ ਕਾਰਨਾਂ ਕਰਕੇ ਮੌਜੂਦ ਸਨ, fragmentation ਦਾ ਕੋਈ ਕੌਈ ਸੁਖ ਨਹੀਂ ਸੀ। ਆਪਰੇਟਰਾਂ ਦੇ ਉਦੇਸ਼ ਵੱਖ-ਵੱਖ ਸਨ (ਸ਼ੋਧ, ਫੌਜੀ ਭਰੋਸੇਮੰਦੀ, ਵਪਾਰਕ ਸੇਵਾ), ਬਜਟ ਵੱਖ-ਵੱਖ ਸਨ ਅਤੇ ਤਕਨੀਕੀ ਸੀਮਾਵਾਂ ਵੀ ਵੱਖ-ਵੱਖ ਸਨ। ਹਾਰਡਵੇਅਰ ਵੇਂਡਰ ਅਸੰਗਤ ਪ੍ਰਣਾਲੀਆਂ ਵੇਚਦੇ ਸਨ। ਕੁਝ ਨੈੱਟਵਰਕ ਲੰਬੀ ਦੂਰੀ ਲਿੰਕਾਂ ਲਈ ਆਪਟੀਮਾਈਜ਼ ਕੀਤੇ ਗਏ ਸਨ, ਕੁਝ ਕੈਂਪਸ ਵਾਤਾਵਰਨ ਲਈ, ਅਤੇ ਕੁਝ ਵਿਸ਼ੇਸ਼ ਸੇਵਾਵਾਂ ਲਈ।
ਨਤੀਜਾ: ਕਨੇਕਟਿਵਿਟੀ ਦੇ ਬਹੁਤ ਸਾਰੇ “ਟੀਕੂ”।
ਜੇ ਤੁਸੀਂ ਦੋ ਨੈੱਟਵਰਕਾਂ ਨੂੰ ਗੱਲ ਕਰਵਾਉਣਾ ਚਾਹੁੰਦੇ ਹੋ ਤਾਂ ਸਧਾਰਣ ਤਰੀਕਾ ਇਹ ਸੀ ਕਿ ਇਕ ਪਾਸੇ ਨੂੰ ਦੂਜੇ ਦੇ ਮੌਡਲ ਅਨੁਸਾਰ ਦੁਬਾਰਾ ਬਣਾਓ। ਇਹ ਅਸਲ ਦੁਨੀਆ ਵਿੱਚ ਝਟਪਟ ਨਹੀਂ ਹੁੰਦਾ: ਮਹਿੰਗਾ, ਹੌਲੀ ਅਤੇ ਰਾਜਨੀਤਕ ਤੌਰ 'ਤੇ ਜਟਿਲ।
ਜੋ ਲੋੜ ਸੀ ਉਹ ਇਹ ਸੀ ਕਿ ਇੱਕ ਸਾਂਝਾ ਗਲੂ ਹੋਵੇ—ਆਜ਼ਾਦ ਨੈੱਟਵਰਕਾਂ ਨੂੰ ਆਪਣੀਆਂ ਅੰਦਰੂਨੀ ਚੋਣਾਂ ਰੱਖਦਿਆਂ ਜੁੜਨ ਦਾ ਤਰੀਕਾ। ਇਸਦਾ ਮਤਲਬ ਸੀ:
ਇਹ ਚੈਲੇਂਜ ਉਹ ਮਾਹੌਲ ਬਣਾਉਂਦੀ ਹੈ ਜਿਸ 'ਤੇ Cerf ਅਤੇ ਹੋਰਾਂ ਨੇ ਇੰਟਰਨੈੱਟਵਰਕਿੰਗ ਦੇ ਵਿਚਾਰ ਵਧਾਏ: ਇੱਕ ਸਾਂਝੀ ਲੇਅਰ 'ਤੇ ਨੈੱਟਵਰਕਾਂ ਨੂੰ ਜੋੜੋ ਤਾਂ ਜੋ ਉੱਪਰ ਨਵੀਂ ਨਵੀਨਤਾ ਹੋ ਸਕੇ ਅਤੇ ਹੇਠਾਂ ਵੱਖਰਾ ਰਹੇ।
ਜੇ ਤੁਸੀਂ ਕਦੇ ਫ਼ੋਨ ਕਾਲ ਕੀਤੀ ਹੈ ਤਾਂ ਤੁਸੀਂ ਸਰਕਿਟ-ਸਵਿੱਚਿੰਗ ਦੀ ਸੂਝ ਦਾ ਅਨੁਭਵ ਕੀਤਾ ਹੋਵੇਗਾ: ਇਕ ਸਮਾਂ-ਦੇਰ ਲਈ ਇੱਕ ਨਿੱਜੀ “ਲਾਈਨ” ਰਿੱਜ਼ਰਵ ਹੋ ਜਾਦੀ ਹੈ। ਇਹ ਆਵਾਜ਼ ਲਈ ਚੰਗਾ ਕੰਮ ਕਰਦਾ ਹੈ, ਪਰ ਜਦੋਂ ਗੱਲ ਅਕਸਰ ਚੁੱਪ-ਚੁੱਪ ਹੋਣ ਵਾਲੀ ਹੋਵੇ ਤਾਂ ਇਹ ਬੇਕਾਰ ਹੈ।
ਪੈਕੇਟ-ਸਵਿੱਚਿੰਗ ਮਾਡਲ ਨੂੰ ਉਲਟ ਦਿੰਦਾ ਹੈ। ਇੱਕ ਦੈਨਿਕ ਉਦਾਹਰਣ ਡਾਕ ਸੇਵਾ ਹੈ: ਨਿੱਜੀ ਹਾਈਵੇ ਜ਼ਰੂਰੀ ਨਹੀਂ ਰੱਖਨੀ, ਬਲਕਿ ਤੁਸੀਂ ਆਪਣਾ ਸੁਨੇਹਾ ਲਿਫਾਫੇ ਵਿਚ ਪਾਓ। ਹਰ ਲਿਫਾਫਾ (ਪੈਕੇਟ) ਲੇਬਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਸਾਂਝੇ ਰਸਤੇ ਰਾਹੀਂ ਭੇਜਿਆ ਜਾਂਦਾ ਹੈ ਅਤੇ ਮੰਜ਼ਿਲ 'ਤੇ ਦੁਬਾਰਾ ਜੋੜਿਆ ਜਾਂਦਾ ਹੈ।
ਜ਼ਿਆਦਾਤਰ ਕੰਪਿਊਟਰ ਟ੍ਰੈਫਿਕ ਬਰਸਟ-ਆਕਾਰ ਦਾ ਹੈ। ਇੱਕ ਇਮੇਲ, ਫਾਇਲ ਡਾਊਨਲੋਡ ਜਾਂ ਵੈੱਬ ਪੇਜ਼ ਲਗਾਤਾਰ ਡਾਟਾ ਦਾ ਸਤਰ ਨਹੀਂ ਹੁੰਦੇ—ਇਹ ਇੱਕ ਛੋਟਾ ਧੱਕਾ ਹੈ, ਫਿਰ ਕੁਝ ਸਮਾਂ ਖਾਲੀ, ਫਿਰ ਹੋਰ ਧੱਕਾ। ਪੈਕੇਟ-ਸਵਿੱਚਿੰਗ ਬਹੁਤ ਸਾਰੇ ਲੋਕਾਂ ਨੂੰ ਇਕੱਠੇ ਹੀ ਲਿੰਕ ਸਾਂਝੇ ਕਰਨ ਦੀ ਆਜ਼ਾਦੀ ਦਿੰਦਾ ਹੈ ਕਿਉਂਕਿ ਨੈੱਟਵਰਕ ਓਹਨਾ ਲਈ ਪੈਕੇਟ ਲਿਜਾਂਦਾ ਹੈ ਜਿਨ੍ਹਾਂ ਕੋਲ ਹਾਲੇ ਭੇਜਣ ਲਈ ਕੁਝ ਹੈ।
ਇਹ ਇੱਕ ਮੁੱਖ ਕਾਰਨ ਹੈ ਕਿ ਇੰਟਰਨੈੱਟ ਨਵੇਂ ਐਪਲੀਕੇਸ਼ਨਾਂ ਨੂੰ ਬਿਨਾਂ ਮੁਲ-ਵਿਚਾਰ ਦੇ ਵਧਾ ਸਕਦਾ ਸੀ: ਤੁਸੀਂ ਇੱਕ ਛੋਟਾ ਸੁਨੇਹਾ ਜਾਂ ਇਕ ਵੱਡੀ ਵੀਡੀਓ ਇਕੋ ਹੀ ਮੂਲ ਵਿਧੀ ਨਾਲ ਭੇਜ ਸਕਦੇ ਹੋ—ਟੁਕੜੇ ਕਰਕੇ ਭੇਜੋ।
ਪੈਕੇਟਾਂ ਦਾ ਸਕੇਲਿੰਗ ਸਿਰਫ ਤਕਨੀਕੀ ਨਹੀਂ, ਸਮਾਜਿਕ ਵੀ ਹੈ। ਵੱਖ-ਵੱਖ ਨੈੱਟਵਰਕ (ਯੂਨੀਵਰਸਿਟੀ, ਕੰਪਨੀ, ਸਰਕਾਰ) ਜਦੋਂ ਤਕ ਉਹ ਪੈਕੇਟ ਅੱਗੇ ਭੇਜਣ ਦੇ ਨਿਯਮਾਂ 'ਤੇ ਰਾਜ਼ੀ ਹਨ, ਇੱਕ-ਦੂਜੇ ਨਾਲ ਜੁੜ ਸਕਦੇ ਹਨ। ਕੋਈ ਇੱਕ ਆਪਰੇਟਰ ਪੂਰੇ ਰਸਤੇ ਦਾ ਮਾਲਕ ਹੋਣਾ ਜ਼ਰੂਰੀ ਨਹੀਂ; ਹਰ ਡੋਮੇਨ ਟ੍ਰੈਫਿਕ ਨੂੰ ਅੱਗੇ ਉਥੇ ਤੱਕ ਲਿਜਾ ਸਕਦਾ ਹੈ।
ਕਿਉਂਕਿ ਪੈਕੇਟ ਲਿੰਕ ਸਾਂਝੇ ਕਰਦੇ ਹਨ, ਤੁਹਾਨੂੰ ਕਤਾਰਬੰਦੀ ਦੇ ਕਾਰਨ ਦੇਰੀ, ਜਿਟਰ ਜਾਂ ਇੱਥੇ-ਉੱਥੇ ਲਾਸ ਆ ਸਕਦੀ ਹੈ ਜਦੋਂ ਨੈੱਟਵਰਕ ਭਰਪੂਰ ਹੋਵੇ। ਇਹ ਘਾਟ ਇੱਕ ਸੇਟ ਦੇ ਕੰਟਰੋਲ ਮਕੈਨਿਜ਼ਮਾਂ ਦੀ ਲੋੜ ਪੈਦਾ ਕਰਦੇ ਹਨ—ਰੀਟ੍ਰਾਂਸਮੀਸ਼ਨ, ਆਰਡਰਿੰਗ ਅਤੇ ਕਾਂਜੈਸਨ ਕੰਟਰੋਲ—ਤਾਂ ਜੋ ਪੈਕੇਟ-ਸਵਿੱਚਿੰਗ ਭਾਰੀ ਲੋਡ ਹੇਠਾਂ ਵੀ ਤੇਜ਼ ਅਤੇ ਨਿਆਯਪੂਰਨ ਰਹੇ।
Cerf ਅਤੇ ਸਹਿਯੋਗੀਆਂ ਦਾ ਮਕਸਦ “ਇੱਕ ਨੈੱਟਵਰਕ ਬਣਾਉਣਾ” ਨਹੀਂ ਸੀ। ਉਹ ਬਹੁਤ ਸਾਰੇ ਨੈੱਟਵਰਕਾਂ—ਯੂਨੀਵਰਸਿਟੀ, ਸਰਕਾਰ, ਵਪਾਰ—ਨੂੰ ਏਸ ਤਰ੍ਹਾਂ ਜੋੜਣਾ ਚਾਹੁੰਦੇ ਸਨ ਕਿ ਹਰ ਇੱਕ ਆਪਣੀ ਤਕਨੀਕ, ਆਪਰੇਟਰ ਅਤੇ ਨਿਯਮ ਰੱਖ ਸਕੇ।
TCP/IP ਨੂੰ ਅਕਸਰ ਇੱਕ “ਸੂਟ” ਵਜੋਂ ਵਰਣਿਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਪਰ ਮੂਲ ਡਿਜ਼ਾਈਨ ਦਾ ਪੈਸਾ ਇਹ ਵੰਡ ਹੈ:
ਇਸ ਵੰਡ ਨੇ “ਇੰਟਰਨੈੱਟ” ਨੂੰ ਇੱਕ ਸਾਂਝੇ ਡਿਲਿਵਰੀ ਫੈਬਰਿਕ ਵਾਂਗ ਕੰਮ ਕਰਨ ਦਿਤਾ, ਜਦਕਿ ਭਰੋਸੇਯੋਗਤਾ ਇੱਕ ਵਿਕਲਪਤ ਸੇਵਾ ਵਜੋਂ ਉੱਪਰ ਲੇਅਰ 'ਤੇ ਰਹੀ।
ਲੇਅਰਿੰਗ ਪ੍ਰਣਾਲੀਆਂ ਨੂੰ ਅਸਾਨੀ ਨਾਲ ਵਿਕਸਤ ਕਰਨਯੋਗ ਬਣਾਉਂਦੀ ਹੈ ਕਿਉਂਕਿ ਤੁਸੀਂ ਇੱਕ ਲੇਅਰ ਨੂੰ ਅਪਗਰੇਡ ਕਰ ਸਕਦੇ ਹੋ ਬਿਨਾਂ ਉਪਰਲੇ ਸਾਰੇ ਹਿੱਸਿਆਂ ਨੂੰ ਦੁਬਾਰਾ ਮਸਲਾ ਕੀਤੇ। ਨਵੇਂ ਫਿਜ਼ਿਕਲ ਲਿੰਕ (ਫਾਈਬਰ, Wi‑Fi, ਸੈੱਲੂਲਰ), ਰੂਟਿੰਗ ਰਣਨੀਤੀਆਂ ਅਤੇ ਸੁਰੱਖਿਆ ਮਕੈਨਿਜ਼ਮ ਸਮੇਂ ਦੇ ਨਾਲ ਆ ਸਕਦੇ ਹਨ—ਫਿਰ ਵੀ ਐਪ TCP/IP 'ਤੇ ਗੱਲ ਕਰਦੇ ਰਹਿੰਦੇ ਹਨ ਅਤੇ ਕੰਮ ਕਰਦੇ ਰਹਿੰਦੇ ਹਨ।
ਇਹੀ ਪੈਟਰਨ ਪਲੇਟਫਾਰਮ ਟੀਮਾਂ ਭੀ ਵਰਤਦੀਆਂ ਹਨ: ਸਥਿਰ ਇੰਟਰਫੇਸ, ਬਦਲਣਯੋਗ ਅੰਦਰੂਨੀ ਹਿੱਸੇ।
IP ਪਰਫੈਕਟ ਨਹੀਂ ਦਾ ਵਾਅਦਾ ਕਰਦਾ; ਇਹ ਸਾਦੇ, ਵਿਸ਼ਵਭਰ ਦੇ ਪ੍ਰਿਮਿਟਿਵ ਦਿੰਦਾ ਹੈ: “ਇਹ ਇੱਕ ਪੈਕੇਟ ਹੈ” ਅਤੇ “ਇਹ ਇੱਕ ਐਡਰੈੱਸ ਹੈ।” ਇਹ ਰੋਕ-ਟੋਕ ਨੇ ਅਣਦੇਖੀਆਂ ਐਪਲੀਕੇਸ਼ਨਾਂ ਨੂੰ ਫੈਲਣ ਦੀ ਆਜ਼ਾਦੀ ਦਿੱਤੀ—ਇਮੇਲ, ਵੈੱਬ, ਸਟ੍ਰੀਮਿੰਗ, ਰੀਅਲ‑ਟਾਈਮ ਚੈਟ—ਕਿਉਂਕਿ ਨਵੀਨਤਾ ਕਰਣ ਵਾਲੇ ਐਜਾਂ 'ਤੇ ਬਿਨਾਂ ਨੈੱਟਵਰਕ ਤੋਂ ਛੇਤੀ ਮਨਜ਼ੂਰੀ ਲਈ ਜਾ ਸਕਦੇ ਸਨ।
ਜੇ ਤੁਸੀਂ ਪਲੇਟਫਾਰਮ ਡਿਜ਼ਾਈਨ ਕਰ ਰਹੇ ਹੋ, ਤਾਂ ਇੱਕ ਟੈਸਟ ਹੈ: ਕੀ ਤੁਸੀਂ ਕੁਝ ਭਰੋਸੇਯੋਗ ਬਿਲਡਿੰਗ ਬਲੌਕ ਦੇ ਰਹੇ ਹੋ, ਜਾਂ ਅੱਜ ਦੇ ਮਸ਼ਹੂਰ ਝੁਕਾਅ ਨੂੰ ਧਿਆਨ ਵਿੱਚ ਰੱਖ ਕੇ ਸਿਸਟਮ ਨੂੰ ਓਵਰਫਿਟ ਕਰ ਰਹੇ ਹੋ?
“ਬੈਸਟ-ਏਫੋਰਟ” ਡਿਲਿਵਰੀ ਸਧਾਰਨ ਹੈ: IP ਤੁਹਾਡੇ ਪੈਕੇਟਾਂ ਨੂੰ ਮਨਜ਼ਿਲ ਵੱਲ ਲਿਜਾਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰੇਗਾ, ਪਰ ਇਹ ਗਰੰਟੀ ਨਹੀਂ ਦਿੰਦਾ ਕਿ ਉਹ ਪਹੁੰਚਣਗੇ, ਆਰਡਰ ਵਿਚ ਹੋਣਗੇ ਜਾਂ ਸਮੇਂ 'ਤੇ ਹੋਣਗੇ। ਪੈਕੇਟ ਜਦੋਂ ਲਿੰਕ ਭਰੇ ਹੋਣ ਤਾਂ ਡ੍ਰੌਪ ਹੋ ਸਕਦੇ ਹਨ, ਜਾਂ ਕਾਂਜੈਸਨ ਕਾਰਨ ਦੇਰੀ ਹੋ ਸਕਦੀ ਹੈ, ਜਾਂ ਵੱਖ-ਵੱਖ ਰਸਤੇ ਲੈ ਸਕਦੇ ਹਨ।
ਇਹ ਸਾਦਗੀ ਖ਼ਾਸ ਫੀਚਰ ਸੀ, ਨਾਕਿ ਖ਼ਰਾਬੀ। ਵੱਖ-ਵੱਖ ਸੰਸਥਾਵਾਂ ਬਹੁਤ ਵੱਖ-ਵੱਖ ਪ੍ਰਕਾਰ ਦੇ ਨੈੱਟਵਰਕ ਜੋੜ ਸਕਦੀਆਂ—ਕੁਝ ਥਾਂ ਮਹਿੰਗੇ ਉੱਚ-ਗੁਣਵੱਤਾ ਲਾਇਨਾਂ, ਕੁਝ ਥਾਂ ਸ਼ੋਰਾਲੂ, ਘੱਟ-ਬੈਂਡਵਿਡਥ ਲਿੰਕ—ਬਿਨਾਂ ਹਰ ਕਿਸੇ ਨੂੰ ਇੱਕੋ ਪ੍ਰੀਮੀਅਮ ਇੰਫਰਾਸਟਰਕਚਰ 'ਤੇ ਅਪਗਰੇਡ ਕਰਨ ਦੀ ਮੰਗ ਕੀਤੇ।
ਬੈਸਟ-ਏਫੋਰਟ IP ਨੇ ਭਾਗੀਦਾਰੀ ਦੀ “ਦਾਖਲਾ ਕੀਮਤ” ਘਟਾਈ। ਯੂਨੀਵਰਸਿਟੀ, ਸਰਕਾਰ, ਸਟਾਰਟਅੱਪ ਅਤੇ ਆਖਰਕਾਰ ਘਰੇਲੂ ਘਰ-ਪ੍ਰਯੋਗਕਰਤਾ ਵੀ ਆਪਣੀ ਕੁੰਜੀ ਕਨੈਕਟਿਵਿਟੀ ਨਾਲ ਜੁੜ ਸਕੇ। ਜੇ ਮੂਲ ਪ੍ਰੋਟੋਕੋਲ ਨੇ ਰਸਤੇ ਵਿੱਚ ਹਰ ਨੈੱਟਵਰਕ ਤੋਂ ਸਖ਼ਤ ਗਰੰਟੀਆਂ ਮੰਗੀਆਂ ਹੋਈਆਂ ہوتیں, ਅਪਣਾਉਣਾ ਰੁੱਕ ਜਾਂਦਾ—ਸਭ ਤੋਂ ਕਮਜ਼ੋਰ ਕੜੀ ਪੂਰੀ ਸ਼੍ਰੇਣੀ ਨੂੰ ਰੋਕ ਦਿੰਦੀ।
ਧੁਰਲੀਆਂ ਕੇਂਦਰ ਨੂੰ ਪੂਰੀ ਤਰ੍ਹਾਂ ਭਰੋਸੇਯੋਗ ਬਣਾਉਣ ਦੀ ਬਜਾਏ, ਇੰਟਰਨੈੱਟ ਭਰੋਸੇਯੋਗਤਾ ਨੂੰ ਹੋਸਟਸ (ਅਰਥਾਤ ਹਰ ਅੰਤ ਦੇ ਡਿਵਾਈਸ) ਵੱਲ ਧੱਕ ਦਿੰਦਾ ਹੈ। ਜੇ ਕਿਸੇ ਐਪਲੀਕੇਸ਼ਨ ਨੂੰ ਸਹੀਤਾ ਚਾਹੀਦੀ ਹੈ—ਜਿਵੇਂ ਫਾਇਲ ਟ੍ਰਾਂਸਫਰ, ਭੁਗਤਾਨ ਜਾਂ ਵੈੱਬ ਪੇਜ਼ ਲੋਡ ਹੋਣਾ—ਤਾਂ ਉਹ ਏਡਜ 'ਤੇ ਲਾਜਿਕ ਤੇ ਪ੍ਰੋਟੋਕੋਲ ਵਰਤ ਕੇ ਲੋਸ ਪਛਾਣ ਅਤੇ ਰਿਕਵਰੀ ਕਰ ਸਕਦੀ ਹੈ:
TCP ਇਸਦਾ ਕਲਾਸਿਕ ਉਦਾਹਰਣ ਹੈ: ਇਹ ਇੱਕ ਅਣਭਰੋਸੇਯੋਗ ਪੈਕੇਟ ਸੇਵਾ ਨੂੰ ਇਕ ਭਰੋਸੇਯੋਗ ਸਟਰਿਮ ਵਿੱਚ ਬਦਲ ਦਿੰਦਾ ਹੈ, ਉਪਭੋਗਤਾਵਾਂ ਉੱਤੇ ਮੁਸ਼ਕਲ ਕੰਮ ਕਰਵਾ ਕੇ।
ਪਲੇਟਫਾਰਮ ਟੀਮਾਂ ਲਈ, ਬੈਸਟ-ਏਫੋਰਟ IP ਨੇ ਇੱਕ ਅਨੁਮਾਨਿਤ ਨੀਂਹ ਦਿੱਤੀ: ਦੁਨੀਆ ਦੇ ਹਰ ਕੋਨੇ ਵਿੱਚ ਤੁਸੀਂ ਇਹੀ ਮੂਲ ਸੇਵਾ ਮੰਨ ਸਕਦੇ ਹੋ—ਪਤਾ ਤੇ ਪੈਕੇਟ ਭੇਜੋ, ਤੇ ਉਹ ਆਮ ਤੌਰ 'ਤੇ ਪਹੁੰਚ ਜਾਂਦੇ ਹਨ। ਇਹ ਅਸਮਾਨਤਾ ਨੇ ਗਲੋਬਲ ਸੌਫਟਵੇਅਰ ਪਲੇਟਫਾਰਮਾਂ ਨੂੰ ਬਣਾਉਣਾ ਮੁਮਕਿਨ ਕੀਤਾ ਜੋ ਦੇਸ਼ਾਂ, ਕੈਰੀਅਰਾਂ ਅਤੇ ਹਾਰਡਵੇਅਰ 'ਚ ਮਿਲਦੀ-ਜੁਲਦੀ ਵਰਤੋਂ ਦਿਖਾਉਂਦੇ ਹਨ।
ਅੰਤ-ਤੋਂ-ਅੰਤ ਸਿਧਾਂਤ ਇੱਕ ਸਧਾਰਨ ਖ਼ਿਆਲ ਹੈ: ਨੈੱਟਵਰਕ ਦੇ “ਕੋਰ” ਨੂੰ ਸੰਭਵ ਤੌਰ 'ਤੇ ਘੱਟ ਰੱਖੋ, ਅਤੇ ਹੁਨਰਾਂ ਨੂੰ ਐਂਡ-ਪੁਆਇੰਟਸ/ਐਪਸ 'ਤੇ ਰੱਖੋ।
ਸਾਫਟਵੇਅਰ ਨਿਰਮਾਤਾਵਾਂ ਲਈ, ਇਹ ਵੰਡ ਇੱਕ ਵੱਡੀ ਡੀਗਰੀ ਦਾ ਤੋਹਫ਼ਾ ਸੀ। ਜੇ ਨੈੱਟਵਰਕ ਨੂੰ ਤੁਹਾਡੀ ਐਪ ਨੂੰ ਸਮਝਣ ਦੀ ਲੋੜ ਨਹੀਂ ਸੀ, ਤਾਂ ਤੁਸੀਂ ਨਵੇਂ ਵਿਚਾਰਾਂ ਨੂੰ ਬਿਨਾਂ ਹਰ ਨੈੱਟਵਰਕ ਆਪਰੇਟਰ ਨਾਲ ਵਿਚਾਰ-ਵਟਾਂਦਰੇ ਦੇ ਰਾਹੀਂ ਲਾਂਚ ਕਰ ਸਕਦੇ ਸੀ।
ਇਸ ਲਚਕੀਲਾਪਨ ਨੇ ਗਲੋਬਲ ਪਲੇਟਫਾਰਮਾਂ ਨੂੰ ਤੇਜ਼ੀ ਨਾਲ ਇਟਰੇਟ ਕਰਨ ਯੋਗ ਬਣਾਇਆ: ਇਮੇਲ, ਵੈੱਬ, ਵੌਇਸ/ਵਿਡੀਓ ਕਾਲ ਅਤੇ ਬਾਅਦ ਵਿੱਚ ਮੋਬਾਈਲ ਐਪਸ ਸਾਰੇ ਇੱਕੋ ہی ਬੁਨਿਆਦੀ ਪਲੰਬਿੰਗ 'ਤੇ ਚੱਲੇ।
ਇੱਕ ਸਾਦਾ ਕੋਰ ਇਸ ਦਾ ਮਤਲਬ ਹੈ ਕਿ ਕੋਰ ਆਪਣੇ ਆਪ ਸੁਰੱਖਿਆ ਪ੍ਰਦਾਨ ਨਹੀਂ ਕਰਦਾ। ਜੇ ਨੈੱਟਵਰਕ ਮੁਢਲੇ ਤੌਰ 'ਤੇ ਪੈਕੇਟ ਭੇਜਨ 'ਤੇ ਧਿਆਨ ਰੱਖਦਾ ਹੈ, ਤਾਂ ਹਮਲਾਵਰ ਤੇ ਦੁਰਵਿਵਹਾਰ ਕਰਨ ਵਾਲੇ ਉਸੀ ਖੁੱਲ੍ਹੇ ਸੁਵਿਧਾ ਦਾ ਫਾਇਦਾ ਉਠਾ ਸਕਦੇ ਹਨ—ਸਪੈਮ, ਸਕੈਨਿੰਗ, ਡੀ.ਓ.ਐਸ. ਹਮਲੇ ਅਤੇ ਫ੍ਰੌਡ।
ਕੁਆਲਿਟੀ-ਆਫ-ਸੇਵਾ (QoS) ਇੱਕ ਹੋਰ ਟੈਂਸ਼ਨ ਹੈ। ਯੂਜ਼ਰਾਂ ਨੂੰ ਸਮਰੱਥ ਵਿਡੀਓ ਕਾਲ ਅਤੇ ਤੁਰੰਤ ਜਵਾਬ ਦੀ ਉਮੀਦ ਹੈ, ਪਰ ਬੈਸਟ-ਏਫੋਰਟ ਡਿਲਿਵਰੀ ਜਿਟਰ, ਕਾਂਜੈਸਨ ਅਤੇ ਬਦਲਣਯੋਗ ਪ੍ਰਦਰਸ਼ਨ ਪੈਦਾ ਕਰ ਸਕਦੀ ਹੈ। ਐਂਡ-ਟੂ-ਐਂਡ ਦ੍ਰਿੱਕੱਕਟ ਰੱਸ਼ ਨੂੰ ਉੱਪਰ ਧਕੇਂਦਾ ਹੈ: ਰੀਟ੍ਰਾਈ ਲੋਜਿਕ, ਬਫਰਿੰਗ, ਰੇਟ-ਅਡਾਪਟੇਸ਼ਨ ਅਤੇ ਐਪ-ਸਤਰ ਤੇ ਪ੍ਰਾਥਮਿਕਤਾ।
ਅਕਸਰ ਲੋਕ ਜੋ “ਇੰਟਰਨੈੱਟ” ਸਮਝਦੇ ਹਨ, ਉਹ ਜ਼ਿਆਦਾਤਰ ਉਸ ਨਿਯੂਨਤਮ ਕੋਰ ਦੇ ਉੱਪਰ ਬਣੇ ਢਾਂਚਿਆਂ ਹਨ: CDN ਜੋ ਸਮੱਗਰੀ ਨੂੰ ਯੂਜ਼ਰਾਂ ਦੇ ਨੇੜੇ ਲਿਆਉਂਦੇ ਹਨ, ਇੰਕ੍ਰਿਪਸ਼ਨ (TLS) ਜੋ ਪਰਦੇਦਾਰੀ ਅਤੇ ਪੂਰਨਤਾ ਜੋੜਦਾ ਹੈ, ਅਤੇ ਸਟ੍ਰੀਮਿੰਗ ਪ੍ਰੋਟੋਕੋਲ ਜੋ ਮੌਜੂਦਾ ਹਾਲਤ ਦੇ ਅਨੁਸਾਰ ਗੁਣਵੱਤਾ ਅਡਾਪਟ ਕਰਦੇ ਹਨ। ਇੱਥੇ ਤੱਕ ਕਿ bot ਸੁਰੱਖਿਆ, DDoS ਰੋਕਥਾਮ ਅਤੇ ਪ੍ਰਦਰਸ਼ਨ ਤੇਜ਼ ਕਰਨ ਵਾਲੀਆਂ ਸਕੀਮਾਂ ਵੀ ਅਕਸਰ ਐਜ 'ਤੇ ਪਲੇਟਫਾਰਮ ਸੇਵਾਵਾਂ ਵਜੋਂ ਦਿੱਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ ਨਾ ਕਿ IP ਦੇ ਆਪਣੇ ਅੰਦਰ।
ਇੱਕ ਨੈੱਟਵਰਕ ਤਦ ਹੀ “ਗਲੋਬਲ” ਬਣ ਸਕਦਾ ਹੈ ਜਦ ਹਰ ਡਿਵਾਈਸ ਪਰਯਾਪਤ ਤੌਰ 'ਤੇ ਪਹੁੰਚਣਯੋਗ ਹੋਵੇ, ਬਿਨਾਂ ਇਸਦੇ ਕਿ ਹਰ ਹਿੱਸੇਦਾਰ ਨੂੰ ਹਰ ਦੂਜੇ ਬਾਰੇ ਜਾਣਕਾਰੀ ਹੋਵੇ। ਇਹੀ ਕੰਮ ਐਡਰੈਸਿੰਗ, ਰੂਟਿੰਗ ਅਤੇ DNS ਕਰਦੇ ਹਨ: ਤਿੰਨ ਵਿਚਾਰ ਜੋ ਜਿਸ ਇੱਕੜੇ ਨੈੱਟਵਰਕਾਂ ਦੇ ਢੇਰ ਨੂੰ ਅਸਲ ਵਰਤੋਂਯੋਗ ਬਣਾਉਂਦੇ ਹਨ।
ਇੱਕ ਐਡਰੈਸ ਇੱਕ ਪਛਾਣ ਹੈ ਜੋ ਨੈੱਟਵਰਕ ਨੂੰ ਦੱਸਦੀ ਹੈ ਕਿ ਕੁਝ ਕਿੱਥੇ ਹੈ। IP ਵਿੱਚ ਉਹ “ਕਿੱਥੇ” ਇੱਕ ਸੰਰਚਿਤ ਨੰਬਰਾਤਮਿਕ ਫਾਰਮ ਵਿੱਚ ਦਰਸਾਇਆ ਜਾਂਦਾ ਹੈ।
ਰੂਟਿੰਗ ਇਹ ਨਿਰਣਯ ਕਰਦੀ ਹੈ ਕਿ ਪੈਕੇਟ ਉਸ ਐਡਰੈੱਸ ਵੱਲ ਕਿਵੇਂ ਚੱਲੇ। ਰਾਊਟਰਾਂ ਨੂੰ ਧਰਤੀ 'ਤੇ ਹਰ ਮਸ਼ੀਨ ਦਾ ਪੂਰਾ ਨਕਸ਼ਾ ਨਹੀਂ ਚਾਹੀਦਾ; ਉਨ੍ਹਾਂ ਨੂੰ ਸਿਰਫ਼ ਚਰਨ-ਚਰਨ 'ਤੇ ਟ੍ਰੈਫਿਕ ਅੱਗੇ ਭੇਜਣ ਲਈ ਕਾਫੀ ਜਾਣਕਾਰੀ ਚਾਹੀਦੀ ਹੈ।
ਚਾਬੀ ਇਹ ਹੈ ਕਿ ਫਾਰਵਰਡਿੰਗ ਫੈਸਲੇ ਸਥਾਨਕ ਅਤੇ ਤੇਜ਼ ਹੋ ਸਕਦੇ ਹਨ, ਜਦ ਕਿ ਕੁੱਲ ਨਤੀਜਾ ਫਿਰ ਵੀ ਗਲੋਬਲ ਪਹੁੰਚ ਵਾਂਗ ਦਿੱਸਦਾ ਹੈ।
ਜੇ ਹਰ ਇਕ ਡਿਵਾਈਸ ਐਡਰੈੱਸ ਨੂੰ ਹਰ ਥਾਂ ਦਰਜ ਕਰਨਾ ਪੈਂਦਾ ਤਾਂ ਇੰਟਰਨੈੱਟ ਆਪਣੀ ਖੁਦ ਦੀ ਕਿਤਾਬਦਾਰੀ ਹੇਠਾਂ ਡਿੱਗ ਜਾਂਦੀ। ਹਾਇਰਾਰਕੀ ਐਡਰੈਸਿੰਗ ਐਡਰੈੱਸਾਂ ਨੂੰ ਗਰੁੱਪ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦੀ ਹੈ (ਉਦਾਹਰਣ ਲਈ ਨੈੱਟਵਰਕ ਜਾਂ ਪ੍ਰੋਵਾਇਡਰ ਅਨੁਸਾਰ), ਤਾਂ ਰਾਊਟਰ ਐਗਰਗੇਟ ਰੂਟਸ ਰੱਖ ਸਕਦੇ ਹਨ—ਇੱਕ ਐਂਟਰੀ ਜੋ ਬਹੁਤ ਸਾਰੀਆਂ ਮੰਜ਼ਿਲਾਂ ਦਰਸਾਉਂਦੀ ਹੈ।
ਇਹੀ ਵਧਦੀ ਰਹਿਣ ਦੀ ਅਣਗੌਨੀ ਗੱਲ ਹੈ: ਛੋਟੇ ਰੂਟਿੰਗ ਟੇਬਲ, ਘੱਟ ਅਪਡੇਟ, ਅਤੇ ਸੰਗਠਨਾਂ ਵਿੱਚ ਸਿਧੀ ਸਮਨਵਯਤਾ। ਐਗਰੇਗੇਸ਼ਨ ਇਸ ਲਈ ਵੀ ਮਹੱਤਵਪੂਰਨ ਹੈ ਕਿ IP ਐਡਰੈਸ ਨੀਤੀਆਂ ਅਤੇ ਵਰਤੋ ਵੰਡਣੇ ਵਾਲੇ ਨਿਰਣਯਾਂ ਆਪਰੇਟਰਾਂ 'ਤੇ ਸਿੱਧਾ ਪ੍ਰਭਾਵ ਪਾਉਂਦੇ ਹਨ: ਉਹ ਗਲੋਬਲ ਪ੍ਰਣਾਲੀ ਨੂੰ ਕੋਹੀਰੈਂਟ ਰੱਖਣ ਦੀ ਕੀਮਤ 'ਤੇ ਪ੍ਰਭਾਵ ਦਿੰਦੇ ਹਨ।
ਲੋਕ ਨੰਬਰ ਟਾਈਪ ਕਰਨਾ ਨਹੀਂ ਚਾਹੁੰਦੇ, ਅਤੇ ਸੇਵਾਵਾਂ ਇੱਕ ਹੀ ਮਸ਼ੀਨ ਨਾਲ ਸਥਾਈ ਤੌਰ 'ਤੇ ਜੁੜੀਆਂ ਨਹੀਂ ਰਹਿ ਸਕਦੀਆਂ। DNS (Domain Name System) ਨਾਮਕ ਲੇਅਰ ਹੈ ਜੋ ਪੜਨ-ਯੋਗ ਨਾਮਾਂ (ਜਿਵੇਂ api.example.com) ਨੂੰ IP ਐਡਰੈਸਾਂ ਨਾਲ ਜੋੜਦਾ ਹੈ।
ਪਲੇਟਫਾਰਮ ਟੀਮਾਂ ਲਈ, DNS ਸਿਰਫ਼ ਸਹੂਲਤ ਨਹੀਂ:
ਦੂਜੇ ਸ਼ਬਦਾਂ ਵਿੱਚ, ਐਡਰੈਸਿੰਗ ਅਤੇ ਰੂਟਿੰਗ ਇੰਟਰਨੈੱਟ ਨੂੰ ਪਹੁੰਚਯੋਗ ਬਣਾਉਂਦੇ ਹਨ; DNS ਇਸਨੂੰ ਪਲੇਟਫਾਰਮ-ਪੱਧਰ 'ਤੇ ਵਰਤੋਂਯੋਗ ਅਤੇ ਆਪਰੇਸ਼ਨਲ ਤੌਰ 'ਤੇ ਅਡਾਪਟੇਬਲ ਬਣਾਂਦਾ ਹੈ।
ਇੱਕ ਪ੍ਰੋਟੋਕੋਲ ਉਸ ਵੇਲੇ "ਇੰਟਰਨੈੱਟ" ਬਣਦਾ ਹੈ ਜਦ ਬਹੁਤ ਸਾਰੇ ਆਜ਼ਾਦ ਨੈੱਟਵਰਕ ਅਤੇ ਉਤਪਾਦ ਇਸਨੂੰ ਪ੍ਰਵਾਨ ਕਰ ਸਕਣ ਬਿਨਾਂ ਕਿਸੇ ਦੀ ਅਨੁਮਤੀ ਲਏ। TCP/IP ਦੇ ਆਸ-ਪਾਸ ਇਕ ਸਮਝਦਾਰ ਚੋਣ ਸਿਰਫ਼ ਤਕਨੀਕੀ ਨਹੀਂ ਸੀ—ਇਹ ਸਮਾਜਿਕ ਵੀ ਸੀ: ਵਿਸਥਾਪਿਤ ਟੈਕਸਟ ਪ੍ਰਕਾਸ਼ਿਤ ਕਰੋ, ਆਲੋਚਨਾ ਲਈ ਸੱਦੋ, ਅਤੇ ਕਿਸੇ ਨੂੰ ਵੀ ਉਨ੍ਹਾਂ ਦੀ ਆਪਣੀ ਲਾਗੂਕਰਨ ਕਰਨ ਦਿਉ।
Request for Comments (RFC) ਸੀਰੀਜ਼ ਨੇ ਨੈੱਟਵਰਕਿੰਗ ਵਿਚਾਰਾਂ ਨੂੰ ਸਾਂਝੇ, ਹਵਾਲਾ ਯੋਗ ਦਸਤਾਵੇਜ਼ਾਂ ਵਿੱਚ ਬਦਲ ਦਿੱਤਾ। ਇੱਕ ਵੇਂਡਰ ਦੁਆਰਾ ਨਿਯੰਤਰਿਤ ਬਲੈਕ-ਬਾਕਸ ਮਿਆਰੀ ਦੀ ਥਾਂ, RFCs ਨਿਯਮ ਵਿਖਾਉਂਦੇ ਸਨ: ਹਰ ਫੀਲਡ ਦਾ ਕੀ ਮਤਲਬ ਹੈ, ਆਊਟ-ਕੇਸਾਂ 'ਚ ਕੀ ਕਰਣਾ ਹੈ, ਅਤੇ ਸੰਗਤ ਰਹਿਣ ਲਈ ਕਿਵੇਂ ਕੰਮ ਕਰਨਾ ਹੈ।
ਇਹ ਖੁੱਲ੍ਹਾਪਣ ਦੋ ਗੱਲ ਕੀਤੀਆਂ। ਪਹਿਲਾਂ, ਇਸਨੇ ਅਪਨਾਣ ਵਾਲਿਆਂ ਲਈ ਖ਼ਤਰੇ ਘਟਾਏ: ਯੂਨੀਵਰਸਿਟੀ, ਸਰਕਾਰ ਅਤੇ ਕੰਪਨੀਆਂ ਡਿਜ਼ਾਈਨ ਦੀ ਜਾਂਚ ਕਰ ਸਕਦੀਆਂ ਅਤੇ ਉਸਦੇ ਅਨੁਸਾਰ ਬਣਾਉਂਦੀਆਂ। ਦੂਜਾ, ਇਹ ਇੱਕ ਆਮ ਹਵਾਲਾ-ਬਿੰਦੂ ਤਿਆਰ ਕੀਤਾ, ਤਾਂ ਜੋ ਵਿਵਾਦ ਲਿਖਤ ਨੂੰ ਅਪਡੇਟ ਕਰਕੇ ਨਿਪਟਾਏ ਜਾ ਸਕਣ, ਨ ਕਿ ਨਿੱਜੀ ਸੰਝੌਤਾਂ ਰਾਹੀਂ।
ਇੰਟਰਓਪਰੇਬਿਲਿਟੀ ਉਹ ਹੈ ਜੋ "ਬਹੁ-ਵੇਂਡਰ" ਨੂੰ ਮੌਜੂਦ ਕਰਦੀ ਹੈ। ਜਦ ਵੱਖ-ਵੱਖ ਰਾਊਟਰ, ਓਐਸ ਅਤੇ ਐਪਲੀਕੇਸ਼ਨ ਪੈਕੇਟ ਆਸਾਨੀ ਨਾਲ ਬਦਲ ਸਕਦੇ ਹਨ, ਤਾਂ ਖਰੀਦਦਾਰ ਫਸੇ ਨਹੀਂ ਰਹਿੰਦੇ। ਮੁਕਾਬਲਾ ਇਸ ਗੱਲ ਵਿੱਚ ਸਥਾਨਾਂਤਰਿਤ ਹੁੰਦਾ ਹੈ ਕਿ "ਤੁਹਾਡਾ ਪ੍ਰੋਡਕਟ ਕਿੰਣਾ ਵਧੀਆ ਹੈ?"—ਜਿਸ ਨਾਲ ਸੁਧਾਰ ਤੇਜ਼ ਹੋਦਾ ਅਤੇ ਲਾਗਤ ਘੱਟ ਹੁੰਦੀ।
ਅਨੁਕੂਲਤਾ ਨੈੱਟਵਰਕ ਪ੍ਰਭਾਵ ਵੀ ਬਣਾਉਂਦੀ: ਹਰ ਨਵੇਂ TCP/IP ਇੰਪਲੀਮੈਂਟੇਸ਼ਨ ਨਾਲ ਸਾਰਾ ਨੈੱਟਵਰਕ ਵਧੇਰੇ ਕੀਮਤੀ ਹੋ ਜਾਂਦਾ ਹੈ, ਕਿਉਂਕਿ ਉਹ ਹੋਰ ਨਾਲ ਗੱਲ ਕਰ ਸਕਦਾ ਹੈ। ਹੋਰ ਉਪਭੋਗਤਾ ਹੋਰ ਸੇਵਾਵਾਂ ਖਿੱਚਦੇ ਹਨ; ਹੋਰ ਸੇਵਾਵਾਂ ਹੋਰ ਉਪਭੋਗਤਾਵਾਂ।
ਖੁੱਲ੍ਹੇ ਮਿਆਰ ਘਟਾਅ ਨੂੰ ਨਹੀਂ ਦੂਰ ਕਰਦੇ—ਉਹ ਇਸਨੂੰ ਮੁੜ-ਵੰਡਦੇ ਹਨ। RFCs ਵਿਚ ਵਿਚਾਰ-ਵਟਾਂਦਰਾ, ਸਹਯੋਗ ਅਤੇ ਕਈ ਵਾਰੀ ਧੀਮੀ ਬਦਲਾਵ ਸ਼ਾਮਲ ਹੁੰਦਾ ਹੈ, ਖਾਸ ਕਰਕੇ ਜਦ ਅਰਬਾਂ ਦੀਆਂ ਡਿਵਾਈਸਾਂ ਆਜ ਦੇ ਵਿਹਾਰ 'ਤੇ ਨਿਰਭਰ ਹੋਂਦੀਆਂ ਹਨ। ਇਸਦਾ ਫਾਇਦਾ ਇਹ ਹੈ ਕਿ ਬਦਲਾਅ, ਜਦ ਹੁੰਦਾ ਹੈ, ਪੜ੍ਹਨਯੋਗ ਅਤੇ ਚਰਚਾ ਯੋਗ ਹੁੰਦਾ ਹੈ—ਤੇ ਅੰਤਰ ਇਹ ਰਹਿੰਦਾ ਹੈ ਕਿ ਹਰ ਕੋਈ ਫਿਰ ਵੀ ਜੁੜ ਸਕੇ।
ਜਦ ਲੋਕ "ਪਲੇਟਫਾਰਮ" ਕਹਿੰਦੇ ਹਨ, ਉਹ ਅਕਸਰ ਉਸ ਉਤਪਾਦ ਦਾ ਮਤਲਬ ਲੈਂਦੇ ਹਨ ਜਿਸ 'ਤੇ ਹੋਰ ਲੋਕ ਬਣਾਉਂਦੇ ਹਨ: ਤੀਸਰੇ-ਪੱਖ ਐਪ, ਇੰਟੀਗਰੇਸ਼ਨ ਅਤੇ ਸੇਵਾਵਾਂ ਜੋ ਸਾਂਝੇ ਰੇਲਾਂ ਉੱਤੇ ਚਲਦੀਆਂ ਹਨ। ਇੰਟਰਨੈੱਟ 'ਤੇ, ਉਹ ਰੇਲਾਂ ਕਿਸੇ ਇਕ ਕੰਪਨੀ ਦੇ ਨਿੱਜੀ ਨੈੱਟਵਰਕ ਨਹੀਂ—ਉਹ ਸਾਂਝੇ ਪ੍ਰੋਟੋਕੋਲ ਹਨ ਜੋ ਕੋਈ ਵੀ ਲਾਗੂ ਕਰ ਸਕਦਾ ਹੈ।
TCP/IP ਖੁਦ ਵੈੱਬ, ਕਲਾਉਡ ਜਾਂ ਐਪ ਸਟੋਰ ਨਹੀਂ ਬਣਾਇਆ। ਪਰ ਇਸਨੇ ਇੱਕ ਸਥਿਰ, ਵਿਸ਼ਵ-ਵਿਆਪੀ ਨੀਂਹ ਬਣਾਈ ਜਿੱਥੇ ਉਹ ਚੀਜ਼ਾਂ ਆਸਾਨੀ ਨਾਲ ਫੈਲ ਸਕਦੀਆਂ।
ਜਦ ਨੈੱਟਵਰਕ IP ਰਾਹੀਂ ਇਕ-ਦੂਜੇ ਨਾਲ ਜੁੜ ਸਕਦੇ ਸਨ ਅਤੇ ਐਪ TCP ਉੱਤੇ ਡਿਲਿਵਰੀ 'ਤੇ ਨਿਰਭਰ ਕਰ ਸਕਦੇ ਸਨ, ਤਾਂ ਉੱਚ-ਸਤਹ ਦੇ ਬਿਲਡਿੰਗ ਬਲੌਕ ਆਮ ਤੌਰ 'ਤੇ ਸਥਾਪਤ ਹੋ ਸਕੇ:
TCP/IP ਨੇ ਪਲੇਟਫਾਰਮ ਅਰਥਸ਼ਾਸਤਰ ਨੂੰ ਪੇਸ਼ਗੀ ਦਿੱਤੀ: ਤੁਸੀਂ ਇੱਕ ਵਾਰੀ ਬਣਾ ਕੇ ਬਹੁਤ ਸਾਰਿਆਂ ਤੱਕ ਪਹੁੰਚ ਸਕਦੇ ਸੀ, ਬਿਨਾਂ ਹਰ ਵਾਰ ਵਿਲੱਖਣ ਕਨੈਕਟਿਵਿਟੀ ਗੱਲ-ਬਾਤ ਕਰਨ ਦੇ।
ਜਦ ਯੂਜ਼ਰ ਅਤੇ ਡਿਵੈਲਪਰ ਮਹਿਸੂਸ ਕਰਨ ਕਿ ਉਹ ਛੱਡ ਸਕਦੇ ਹਨ—ਜਾਂ ਘੱਟੋ-ਘੱਟ ਫਸੇ ਨਹੀਂ—ਤਾਂ ਪਲੇਟਫਾਰਮ ਤੇਜ਼ੀ ਨਾਲ ਵਧਦਾ ਹੈ। ਖੁੱਲ੍ਹੇ, ਵਿਆਪਕ ਤੌਰ 'ਤੇ ਇੰਪਲੀਮੈਂਟ ਕੀਤੇ ਗਏ ਪ੍ਰੋਟੋਕੋਲ ਸਵਿੱਚਿੰਗ ਲਾਗਤ ਘਟਾਉਂਦੇ ਹਨ ਕਿਉਂਕਿ:
ਇਹ "ਬਿਨਾ-ਪ੍ਰਧਾਨ ਅਨੁਮਤੀ" ਇੰਟਰਓਪਰੇਬਿਲਿਟੀ ਜ਼ਿਆਦਾਤਰ ਪਲੇਟਫਾਰਮ ਬਜ਼ਾਰਾਂ ਨੂੰ ਸਾਂਝੇ ਮਿਆਰਾਂ ਦੇ ਆਧਾਰ 'ਤੇ ਬਣਨ ਯੋਗ ਬਣਾਉਂਦੀ ਹੈ, ਨਾ ਕਿ ਕਿਸੇ ਇਕ ਨੈੱਟਵਰਕ ਮਾਲਕ ਦੇ ਆਲੇ-ਦੁਆਲੇ।
ਇਹ ਸਭ TCP/IP ਉੱਤੇ ਬੈਠਦੇ ਹਨ, ਪਰ ਉਹੀ ਵਿਚਾਰ ਲਾਗੂ ਹੁੰਦਾ ਹੈ: ਜੇ ਨਿਯਮ ਸਥਿਰ ਅਤੇ ਖੁੱਲ੍ਹੇ ਹਨ, ਤਾਂ ਪਲੇਟਫਾਰਮ ਉਤਪਾਦ 'ਤੇ ਮੁਕਾਬਲਾ ਕਰ ਸਕਦੇ ਹਨ—ਬਿਨਾਂ ਜੁੜਨ ਯੋਗਤਾ ਤੋੜੇ।
ਇੰਟਰਨੈੱਟ ਦੀ ਜਾਦੂ ਇਹ ਹੈ ਕਿ ਇਹ ਮਹਾਂਸਾਗਰਾਂ, ਮੋਬਾਈਲ ਨੈੱਟਵਰਕ, Wi‑Fi ਹੋਟਸਪੌਟ ਅਤੇ ਓਵਰਲੋਡ ਹੋਏ ਦਫਤਰੀ ਰਾਊਟਰਾਂ 'ਤੇ ਕੰਮ ਕਰਦਾ ਹੈ। ਘੱਟ ਜਾਦੂਈ ਸੱਚਾਈ: ਇਹ ਹਮੇਸ਼ਾਂ ਸੀਮਾਵਾਂ ਹੇਠਾਂ ਕੰਮ ਕਰ ਰਿਹਾ ਹੈ। ਬੈਂਡਵਿਡਥ ਸੀਮਤ ਹੈ, ਲੇਟੈਂਸੀ ਵੱਖ-ਵੱਖ ਹੁੰਦੀ ਹੈ, ਪੈਕੇਟ ਖੋ ਜਾਂਦੇ ਹਨ ਜਾਂ ਰੀ-ਆਰਡਰ ਹੋ ਜਾਂਦੇ ਹਨ, ਅਤੇ ਕਾਂਜੈਸਨ ਅਚਾਨਕ ਆ ਸਕਦਾ ਹੈ ਜਦ ਬਹੁਤ ਸਾਰੇ ਲੋਕ ਇਕੋ ਰਸਤੇ ਨੂੰ ਸਾਂਝਾ ਕਰਦੇ ਹਨ।
ਭਾਵੇਂ ਤੁਹਾਡੀ ਸੇਵਾ "ਕਲਾਉਡ-ਅਧਾਰਤ" ਹੋਵੇ, ਤੁਹਾਡੇ ਯੂਜ਼ਰ ਉਸਨੂੰ ਰੂਟ ਦੇ ਸਭ ਤੋਂ ਤੰਗ ਸੈਕਸ਼ਨ ਰਾਹੀਂ ਅਨੁਭਵ ਕਰਦੇ ਹਨ। ਫਾਈਬਰ 'ਤੇ ਇੱਕ ਵਿਡੀਓ ਕਾਲ ਅਤੇ ਭੀੜਭਰੇ ਟਰੇਨ 'ਤੇ ਉਹੀ ਕਾਲ ਵੱਖ-ਵੱਖ ਤੌਰ ਤੇ ਪ੍ਰਤੀਤ ਹੋਵੇਗੀ, ਕਿਉਂਕਿ ਲੇਟੈਂਸੀ, ਜਿਟਰ ਅਤੇ ਲਾਸ ਉਪਭੋਗਤਾ ਦੇ ਧਾਰਣਾ ਨੂੰ ਰੂਪ ਦਿੰਦੇ ਹਨ।
ਜਦ ਬਹੁਤ ਸਾਰਾ ਟ੍ਰੈਫਿਕ ਇਕੋ ਲਿੰਕ 'ਤੇ ਆ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਕਤਾਰਾਂ ਬਣਦੀਆਂ ਅਤੇ ਪੈਕੇਟ ਡ੍ਰੌਪ ਹੋ ਜਾਂਦੇ ਹਨ। ਜੇ ਹਰ ਭੇਜਣ ਵਾਲਾ ਹੋਰ ਜ਼ਿਆਦਾ ਭੇਜਣ ਦਾ ਜਵਾਬ ਦੇਵੇ (ਜਾਂ ਬੇਹੱਦ ਝਟਕੇ ਨਾਲ ਰੀਟ੍ਰਾਈ ਕਰੇ), ਤਾਂ ਨੈੱਟਵਰਕ ਕਾਂਜੈਸਨ ਕੱਲੈਪਸ 'ਚ ਫਸ ਸਕਦਾ ਹੈ—ਬਹੁਤ ਸਾਰਾ ਟ੍ਰੈਫਿਕ ਪਰ ਘੱਟ ਡਿਲਿਵਰੀ।
ਕਾਂਜੈਸਨ ਕੰਟਰੋਲ ਉਹ ਵਰਤਾਰਾਂ ਹਨ ਜੋ ਸ਼ੇਅਰਿੰਗ ਨੂੰ ਨਿਆਯਪੂਰਨ ਅਤੇ ਸਥਿਰ ਰੱਖਦੇ ਹਨ: ਉਪਲਬਧ ਸਮਰੱਥਾ ਲਈ ਪ੍ਰੋਬ ਕਰਨਾ, ਲਾਸ/ਲੇਟੈਂਸੀ ਦੇ ਸੰਕੇਤ 'ਤੇ ਧੀਰੇ ਹੋਣਾ, ਫਿਰ ਸਾਵਧਾਨੀ ਨਾਲ ਫਿਰ ਤੇਜ਼ ਹੋਣਾ। TCP ਨੇ ਇਸ "ਪਿੱਛੇ ਹਟੋ, ਫਿਰ ਮੁੜ ਆਉ" ਲਹਿਰਬੰਦ ਸ਼ੈਲੀ ਨੂੰ ਪ੍ਰਸਿੱਧ ਕੀਤਾ ਤਾਂ ਜੋ ਨੈੱਟਵਰਕ ਸਾਦਾ ਰਹੇ ਅਤੇ ਐਂਡਪੋਇੰਟਸ ਅਨੁਕੂਲ ਹੋ ਸਕਣ।
ਕਿਉਂਕਿ ਨੈੱਟਵਰਕ ਅਪੂਰਣ ਹੈ, ਸਫਲ ਐਪਲੀਕੇਸ਼ਨ ਚੁਪਚਾਪ ਹੋਰ ਕੰਮ ਕਰਦੀਆਂ ਹਨ:
ਨਿਰਧਾਰਿਤ ਡਿਜ਼ਾਈਨ ਕਰੋ ਕਿ ਨੈੱਟਵਰਕ ਛੋਟੀ ਅਵਧੀ ਲਈ, ਅਤੇ ਅਕਸਰ ਫੇਲ ਹੋ ਸਕਦਾ ਹੈ:
ਲਚੀਲਾਪਣ ਕੋਈ ਜੋੜੀ ਹੋਈ ਫੀਚਰ ਨਹੀਂ—ਇਹ ਇੰਟਰਨੈੱਟ ਪੈਮਾਨੇ 'ਤੇ ਓਪਰੇਟ ਕਰਨ ਦੀ ਕੀਮਤ ਹੈ।
TCP/IP ਅਸਲ ਵਿੱਚ ਸਫਲ ਹੋਇਆ ਕਿਉਂਕਿ ਇਸਨੇ ਕਿਸੇ ਵੀ ਨੈੱਟਵਰਕ ਨੂੰ ਕਿਸੇ ਹੋਰ ਨਾਲ ਆਸਾਨੀ ਨਾਲ ਜੁੜਨ ਦੀ ਆਗਿਆ ਦਿੱਤੀ। ਇਸ ਖੁੱਲ੍ਹੇਪਣ ਦੀ ਲੁਕਵਾਈ ਕੀਮਤ ਇਹ ਹੈ ਕਿ ਕੋਈ ਵੀ ਤੁਹਾਨੂੰ ਟ੍ਰੈਫਿਕ ਭੇਜ ਸਕਦਾ ਹੈ—ਚਾਹੇ ਚੰਗਾ ਹੋਵੇ ਜਾਂ ਬੁਰਾ।
ਸ਼ੁਰੂਆਤੀ ਡਿਜ਼ਾਈਨ ਨੇ ਸੋਚਿਆ ਸੀ ਕਿ ਕਮਿਊਨਿਟੀ ਛੋਟੀ ਅਤੇ ਅਕਸਰ ਖੋਜ-ਕੇਂਦਰਤ ਰਹੇਗੀ। ਜਦ ਨੈੱਟਵਰਕ ਜਨਤਾ ਦੇ ਲਈ ਖੁੱਲ੍ਹਾ ਹੋ ਗਿਆ, ਉਹੀ "ਸਿਰਫ ਪੈਕੇਟ ਅੱਗੇ ਭੇਜੋ" ਦਰਸ਼ਣ ਸਪੈਮ, ਫ੍ਰੌਡ, ਮੈਲਵੇਅਰ ਡਿਸਟ੍ਰੀਬਿਊਸ਼ਨ, ਡੀ.ਓ.ਐਸ. ਹਮਲਿਆਂ ਅਤੇ ਨਕਾਲਬਾਜ਼ੀ ਲਈ ਵਰਤਿਆ ਗਿਆ। IP ਕਿਸ ਦੀ ਪਛਾਣ ਨਹੀਂ ਕਰਦਾ। Email (SMTP) ਨੇ 'From' ਪਤੇ ਦੇ ਸਾਬਤ ਕਰਨ ਦੀ ਲੋੜ ਨਹੀਂ ਰੱਖੀ। ਅਤੇ ਰਾਊਟਰਾਂ ਦਾ ਕੰਮ ਇਰਾਦੇ ਦੀ ਪਰਖ ਕਰਨ ਲਈ ਨਹੀਂ ਸੀ।
ਜਿਵੇਂ ਹੀ ਇੰਟਰਨੈੱਟ ਆਵਸ਼ਯਕ ਇੰਫਰਾਸਟਰੱਕਚਰ ਬਣ ਗਿਆ, ਸੁਰੱਖਿਆ ਇੱਕ ਐਡ-ਆਨ ਫੀਚਰ ਰਹਿਣਾ ਬੰਦ ਹੋ ਗਈ ਅਤੇ ਸਿਸਟਮ ਬਣਾਉਣ ਦੇ ਤਰੀਕੇ ਦਾ ਹਿੱਸਾ ਬਣ ਗਈ: ਪਛਾਣ, ਗੁਪਤਤਾ, ਪੂਰਨਤਾ ਅਤੇ ਉਪਲਬਧਤਾ ਲਈ ਖਾਸ ਮਕੈਨਿਜ਼ਮ ਲੋੜੀਂਦੇ ਹੋ ਗਏ। ਨੈੱਟਵਰਕ ਮੁਝਰੂਮ ਤੌਰ 'ਤੇ ਬੈਸਟ-ਏਫੋਰਟ ਤੇ ਨਿਰਪੱਖ ਰਹਿ ਗਿਆ, ਪਰ ਐਪਸ ਅਤੇ ਪਲੇਟਫਾਰਮਾਂ ਨੇ ਤਾਰ ਤੇ ਧਾਰਨਾ ਕੀਤੀ ਕਿ ਤਾਰ ਵਿਸ਼ਵਾਸਯੋਗ ਨਹੀਂ ਹੈ।
ਅਸੀਂ IP ਨੂੰ ਹਰ ਪੈਕੇਟ 'ਤੇ ਨਿਯੰਤਰਣ ਕਰਕੇ “ਠੀਕ” ਨਹੀਂ ਕੀਤਾ। ਬਦਲੇ ਵਿੱਚ, ਆਧੁਨਿਕ ਸੁਰੱਖਿਅਤ ਸੁਵਿਧਾਵਾਂ ਉਪਰਲੇ ਲੇਅਰ 'ਤੇ ਬਣਾਈਆਂ ਗਈਆਂ:
ਨੈੱਟਵਰਕ ਨੂੰ ਮੁਢਲਾ ਵਾਰ-ਵਾਰ ਵਾਰਸ਼ਟ ਹਮਲਾਵਰ ਮੰਨੋ। ਹਰ ਬਾਰਡਰ 'ਤੇ ਪਛਾਣ ਅਤੇ ਇਨਪੁੱਟ ਨੂੰ ਵੈਰੀਫਾਈ ਕਰੋ, ਟ੍ਰਾਂਜ਼ਿਟ ਵਿਚ ਇਨਕ੍ਰਿਪਟ ਕਰੋ, ਅਤੇ ਘੱਟ-ਅਧਿਕਾਰ ਦੀ ਨੀਤੀ ਅਪਣਾਓ: ਸੀਮੇਟ ਔਪੀ-ਪਦ, ਛੋਟੀ ਅਵਧੀ ਵਾਲੇ ਕਿਰੇਡੈਂਸ਼ਲ ਅਤੇ ਮਜ਼ਬੂਤ ਡੀਫੌਲਟ।
ਇੰਟਰਨੈੱਟ ਨੇ “ਜਿੱਤ” ਨਹੀਂ ਕੀਤੀ ਕਿਉਂਕਿ ਹਰ ਨੈੱਟਵਰਕ ਨੇ ਇਕੋ ਹੀ ਹਾਰਡਵੇਅਰ, ਵੇਂਡਰ ਜਾਂ ਪਰਫੈਕਟ ਫੀਚਰ ਨਾਲ ਸਹਿਮਤੀ ਦਿੱਤੀ। ਇਹ ਇਸ ਲਈ ਬਚੀ ਰਹੀ ਕਿਉਂਕਿ ਕੁਝ ਪ੍ਰੋਟੋਕੋਲ ਚੋਣਾਂ ਨੇ ਆਜ਼ਾਦ ਸਿਸਟਮਾਂ ਲਈ ਜੁੜਨ, ਸੁਧਾਰ ਅਤੇ ਫੇਲ ਹੋਣ ਦੌਰਾਨ ਕੰਮ ਕਰਨ ਆਸਾਨ ਬਣਾਇਆ।
ਸਪੱਸ਼ਟ ਛਿੱਲਿਆਂ ਵਾਲੀ ਲੇਅਰਿੰਗ. TCP/IP ਨੇ "ਪੈਕੇਟ ਹਿਲਾਣਾ" ਨੂੰ "ਐਪਲੀਕੇਸ਼ਨ ਭਰੋਸੇਯੋਗ ਬਣਾਉਣਾ" ਤੋਂ ਵੱਖ ਕੀਤਾ। ਉਹ ਸੀਮਾ ਨੈੱਟਵਰਕ ਨੂੰ ਜਨਰਲ-ਪਰਪਜ਼ ਰੱਖਣ ਦਿੰਦੀ ਹੈ ਜਦਕਿ ਐਪਜ਼ ਤੇਜ਼ੀ ਨਾਲ ਤਰੱਕੀ ਕਰ ਸਕਦੀਆਂ ਹਨ।
ਕੋਰ ਵਿੱਚ ਸਾਦਗੀ. ਬੈਸਟ-ਏਫੋਰਟ ਡਿਲਿਵਰੀ ਦਾ ਮਤਲਬ ਹੈ ਨੈੱਟਵਰਕ ਨੂੰ ਹਰ ਐਪ ਦੀ ਲੋੜ ਸਮਝਣ ਦੀ ਲੋੜ ਨਹੀਂ। ਨਵੀਨਤਾ ਐਜ 'ਤੇ ਹੋਈ, ਜਿੱਥੇ ਨਵੇਂ ਉਤਪਾਦ ਕੇਂਦਰ ਨਾਲ ਗੱਲਬਾਤ ਕੀਤੇ ਬਿਨਾਂ ਸ਼ੁਰੂ ਕੀਤੇ ਜਾ ਸਕਦੇ ਹਨ।
ਇੰਟਰਓਪਰੇਬਿਲਿਟੀ ਪਹਿਲਾਂ. ਖੁੱਲ੍ਹੇ ਨਿਰਦੇਸ਼ ਅਤੇ ਅਨੁਮਾਨਯੋਗ ਬਿਹੇਵਿਅਰ ਵੱਖ-ਵੱਖ ਸੰਗਠਨਾਂ ਨੂੰ ਅਨੁਕੂਲ ਨਿਰਮਾਣ ਕਰਨ ਯੋਗ ਬਣਾਉਂਦੇ ਹਨ—ਅਤੇ ਗ੍ਰਹਿਣ ਦੀ ਗਤੀ ਨੂੰ ਜੋੜਦੇ ਹਨ।
ਜੇ ਤੁਸੀਂ ਪਲੇਟਫਾਰਮ ਬਣਾ ਰਹੇ ਹੋ, ਤਾਂ ਇੰਟਰਕਨੈਕਸ਼ਨ ਨੂੰ ਇੱਕ ਫੀਚਰ ਮੰਨੋ, ਨਾ ਕਿ ਸਾਈਡ-ਏਫੈਕਟ। ਬਹੁਤ ਸਾਰੀਆਂ "ਸਮਾਰਟ" ਫੀਚਰਾਂ ਜੋ ਯੂਜ਼ਰਾਂ ਨੂੰ ਇਕ ਰਸਤੇ 'ਤੇ ਫਸਾਉਂਦੀਆਂ ਹਨ, ਥਾਂਤੇਕ ਇਕ ਛੋਟਾ ਸਥਿਰ ਪ੍ਰਿਮਿਟਿਵ ਸੈੱਟ ਦੇਣਾ ਬਿਹਤਰ ਹੈ ਜੋ ਬਹੁਤ ਟੀਮਾਂ ਮਿਲਕੇ ਜੋੜ ਸਕਣ।
ਵਿਕਾਸ ਲਈ ਡਿਜ਼ਾਈਨ ਕਰੋ: ਮਨ ਲਓ ਕਿ ਕਲਾਇੰਟ ਪੁਰਾਣੇ ਹੋਣਗੇ, ਸਰਵਰ ਨਵੇਂ ਹੋਣਗੇ, ਅਤੇ ਕੁਝ ਡੀਪੈਂਡੇਨਸੀ ਆਧੀ-ਚੱਲ ਰਹੀਆਂ ਹੋਣਗੀਆਂ। ਤੁਹਾਡਾ ਪਲੇਟਫਾਰਮ ਗਰੇਸਫੁਲ ਡਿਗਰੇਡ ਕਰੇ ਅਤੇ ਫਿਰ ਵੀ ਉਪਯੋਗੀ ਰਹੇ।
ਜੇ ਤੁਸੀਂ ਇੱਕ ਤੇਜ਼-ਬਣਾਉ ਵਾਤਾਵਰਣ ਵਰਤ ਰਹੇ ਹੋ ਜਿਵੇਂ Koder.ai, ਇਹੀ ਸਿਧਾਂਤ ਉਤਪਾਦੀ ਯੋਗਤਾਵਾਂ ਵਿੱਚ ਨਜ਼ਰ ਆਉਂਦੇ ਹਨ: ਇੱਕ ਸਪਸ਼ਟ ਯੋਜਨਾ ਕਦਮ (ਤਾਂ ਜੋ ਇੰਟਰਫੇਸ ਸਪੱਸ਼ਟ ਹੋਊਣ), ਸਨੇਪਸ਼ਾਟ/ਰੋਲਬੈਕ ਰਾਹੀਂ ਸੁਰੱਖਿਅਤ ਇਟਰੇਸ਼ਨ, ਅਤੇ ਉਹੀ ਭਰੋਸੇਯੋਗ ਡਿਪਲੌਇਮੈਂਟ/ਹੋਸਟਿੰਗ ਵਿਹੇਵਿਅਰ ਜੋ ਕਈ ਟੀਮਾਂ ਨੂੰ ਤੇਜ਼ੀ ਨਾਲ ਹਿਲਦੇ ਹੋਏ ਗਾਹਕਾਂ ਨੂੰ ਤੋੜਣ ਤੋਂ ਬਿਨਾਂ ਅਗੇ ਵਧਣ ਦਿੰਦਾ ਹੈ।
ਇੱਕ ਪ੍ਰੋਟੋਕੋਲ ਉਹ ਸਾਂਝੇ ਨਿਯਮ ਹਨ ਜੋ ਸਿਸਟਮਾਂ ਨੂੰ ਸੁਨੇਹੇ ਕਿਵੇਂ ਫਾਰਮੈਟ ਕਰਨੇ ਹਨ, ਸੰਬਾਦ ਕਿਵੇਂ ਸ਼ੁਰੂ/ਮੁਕੰਮਲ ਕਰਨੇ ਹਨ, ਗੁੰਮ ਹੋਏ ਡਾਟੇ ਦਾ ਕੀ ਕਰਨਾ ਹੈ ਅਤੇ ਕਿਸ ਲਈ ਸੁਨੇਹਾ ਹੈ ਇਹ ਕਿਵੇਂ ਪਛਾਣਣਾ ਹੈ—ਇਹ ਸਭ ਨਿਯਮ ਸਮਝਾਉਂਦਾ ਹੈ। ਪਲੇਟਫਾਰਮ ਪ੍ਰੋਟੋਕੋਲਾਂ 'ਤੇ ਨਿਰਭਰ ਕਰਦੇ ਹਨ ਕਿਉਂਕਿ ਇਹ ਅੰਤਰ-ਕੰਮਯੋਗਤਾ ਨੂੰ ਅਣਪਖ਼ਤਾ ਬਣਾਉਂਦੇ ਹਨ, ਜਿਸ ਨਾਲ ਆਜ਼ਾਦ ਟੀਮਾਂ ਅਤੇ ਵੇਂਡਰ ਬਿਨਾਂ ਵੱਖਰੀਆਂ ਡਿਲਾਂ ਦੇ ਇਕੱਠੇ ਕੰਮ ਕਰ ਸਕਦੇ ਹਨ।
ਇੰਟਰਨੈੱਟਵਰਕਿੰਗ ਤੋਂ ਮੁਰਾਦ ਵੱਖ-ਵੱਖ ਆਜ਼ਾਦ ਨੈੱਟਵਰਕਾਂ ਨੂੰ ਇਸ ਤਰ੍ਹਾਂ ਜੋੜਨਾ ਹੈ ਕਿ ਪੈਕੇਟ ਉਨ੍ਹਾਂ ਦੇ ਰਸਤੇ ਇੱਕ ਇਕਾਈ ਤਰ੍ਹਾਂ ਦੌੜ ਸਕਣ। ਮੁੱਖ ਸਮੱਸਿਆ ਇਹ ਸੀ ਕਿ ਇਹ ਸੱਭ ਕੁਝ ਇਸ ਤਰ੍ਹਾਂ ਕੀਤਾ ਜਾਵੇ ਕਿ ਕਿਸੇ ਵੀ ਨੈੱਟਵਰਕ ਨੂੰ ਆਪਣੀਆਂ ਅੰਦਰੂਨੀ ਚੋਇਜ਼ਾਂ ਦੁਬਾਰਾ ਲਿਖਣ ਦੀ ਲੋੜ ਨਾ ਪਵੇ—ਇਸ ਲਈ ਇੱਕ ਸਾਂਝੀ ਲੇਅਰ (IP) ਮਹੱਤਵਪੂਰਨ ਬਣੀ।
ਪੈਕੇਟ-ਸਵਿੱਚਿੰਗ ਡਾਟਾ ਨੂੰ ਛੋਟੇ-ਛੋਟੇ ਪੈਕੇਟਾਂ ਵਿੱਚ ਤੋੜਦਾ ਹੈ ਜੋ ਹੋਰ ਟ੍ਰੈਫਿਕ ਨਾਲ ਸਾਂਝੇ ਲਿੰਕਾਂ 'ਤੇ ਜਾ ਸਕਦੇ ਹਨ, ਜੋ ਕਿ ਕੰਪਿਊਟਰ ਟ੍ਰੈਫਿਕ ਦੀ ਬਰਸਟ-ਅਕਸਰਤਾਂ ਲਈ ਪ੍ਰਭਾਵਸ਼ਾਲੀ ਹੈ। ਸਰਕਿਟ-ਸਵਿੱਚਿੰਗ ਇੱਕ ਨਿੱਜੀ ਰਸਤਾ ਰੋਜ਼ ਬੁੱਕ ਕਰ ਲੈਂਦੀ ਹੈ ਜੋ ਆਮ ਤੌਰ ਤੇ ਬੇਕਾਰ ਹੋ ਸਕਦੀ ਹੈ ਜੇ ਟ੍ਰੈਫਿਕ ਬਹੁਤ ਵਾਰ-ਵਾਰੀ ਹੋਵੇ। ਇਸੀ ਲਈ ਪੈਕੇਟ-ਸਵਿੱਚਿੰਗ ਜਿੱਤੀ।
IP ਐਡਰੈਸਿੰਗ ਅਤੇ ਰੂਟਿੰਗ (ਹਰ ਹੌਪ 'ਤੇ ਪੈਕੇਟ ਮੋਵ ਕਰਨਾ) ਸੰਭਾਲਦਾ ਹੈ। TCP IP ਦੇ ਉੱਪਰ ਬੈਠਦਾ ਹੈ ਅਤੇ ਜੇ ਲੋੜ ਹੋਵੇ ਤਾਂ ਭਰੋਸੇਯੋਗ ਡਿਲਿਵਰੀ ਦਿੰਦਾ ਹੈ—ਆਰਡਰਿੰਗ, ਰੀ-ਟ੍ਰਾਂਸਮੀਸ਼ਨ ਅਤੇ ਫਲੋ ਕੰਟਰੋਲ। ਇਹ ਵੱਖ-ਵੱਖ ਕੰਮ ਵੱਖ-ਵੱਖ ਤਹਾਂ ਰੱਖ ਕੇ ਨੈੱਟਵਰਕ ਨੂੰ ਜਨਰਲ-ਪਰਪਜ਼ ਰੱਖਣਾ ਅਤੇ ਐਪਲੀਕੇਸ਼ਨਾਂ ਨੂੰ ਚੋਣ ਦੇਣ ਯੋਗ ਬਣਾਇਆ ਜਾਂਦਾ ਹੈ।
“ਬੈਸਟ-ਏਫੋਰਟ” ਦਾ ਮਤਲਬ ਹੈ ਕਿ IP ਤੁਹਾਡੇ ਪੈਕੇਟਾਂ ਨੂੰ ਮਨਜ਼ਿਲ ਵੱਲ ਕੋਸ਼ਿਸ਼ ਕਰੇਗਾ ਪਰ ਇਹ ਗੁਆਰੰਟੀ ਨਹੀਂ ਦੇਂਦਾ ਕਿ ਉਹ ਆਉਣਗੇ, ਆਰਡਰ ਵਿਚ ਹੋਣਗੇ ਜਾਂ ਸਮੇਂ 'ਤੇ ਪਹੁੰਚਣਗੇ। ਇਸ ਸਾਦਗੀ ਨੇ ਭਾਗੀਦਾਰੀ ਦੀ ਦਾਖਲਾ ਕੀਮਤ ਨੂੰ ਘਟਾਇਆ, ਜਿਸ ਨਾਲ ਵੱਖ-ਵੱਖ ਕਿਸਮ ਦੇ ਨੈੱਟਵਰਕ ਆਸਾਨੀ ਨਾਲ ਜੁੜ ਸਕੇ ਅਤੇ ਦ੍ਰੁਤ ਅਪਨਾਏ ਜਾ ਸਕੇ।
ਇਹ ਸਿਧਾਂਤ ਕਹਿੰਦਾ ਹੈ ਕਿ ਨੈੱਟਵਰਕ ਕੋਰ ਨੂੰ ਸੰਭਵ ਤੌਰ ਤੇ ਘੱਟ ਰੱਖੋ ਅਤੇ ਹੁਨਰ ਐਂਡ ਪੁਆਇੰਟਸ/ਐਪਲੀਕੇਸ਼ਨਾਂ 'ਤੇ ਰਖੋ। ਫਾਇਦਾ ਇਹ ਹੈ ਕਿ ਐਜ 'ਤੇ ਨਵੇਂ ਖਿਆਲ ਤੇਜ਼ੀ ਨਾਲ ਆ ਸਕਦੇ ਹਨ; ਕੀਮਤ ਇਹ ਹੈ ਕਿ ਐਪਲੀਕੇਸ਼ਨਾਂ ਨੂੰ ਨੈੱਟਵਰਕ ਦੇ ਫੇਲਿਅਰ, ਦੁਰਵਿਵਹਾਰ ਅਤੇ ਬਦਲਾਅ ਦੇ ਲਈ ਖੁਦ ਤਿਆਰ ਰਹਿਣਾ ਪੈਂਦਾ ਹੈ।
ਐਡਰੈਸ ਇੱਕ ਪਛਾਣ ਹੈ ਜੋ ਨੈੱਟਵਰਕ ਨੂੰ ਦੱਸਦੀ ਹੈ ਕਿ ਕੁਝ ਕਿੱਥੇ ਹੈ; ਰੂਟਿੰਗ ਅਗਲਾ ਕਦਮ ਨਿਰਧਾਰਤ ਕਰਦੀ ਹੈ ਜੋ ਪੈਕੇਟ ਨੂੰ ਇਸ ਪਤਾ ਵੱਲ ਲਿਜਾਂਦਾ ਹੈ। ਹਾਇਰਾਰਕੀ ਧਾਂਚਾ ਅਤੇ ਐਗਰੇਗੇਸ਼ਨ ਰੂਟਿੰਗ ਟੇਬਲਾਂ ਛੋਟੀਆਂ ਰੱਖਣ ਅਤੇ ਵਿਸਤਾਰਯੋਗਤਾ ਬਣਾਈ ਰੱਖਣ ਲਈ ਜਰੂਰੀ ਹਨ।
DNS ਮਨੁੱਖੀ-ਪFriendly ਨਾਮਾਂ (ਜਿਵੇਂ api.example.com) ਨੂੰ IP ਐਡਰੈੱਸ ਨਾਲ ਮੈਪ ਕਰਦਾ ਹੈ ਅਤੇ ਇਹ ਮੈਪਿੰਗ ਬਦਲੀ ਜਾ ਸਕਦੀ ਹੈ ਬਿਨਾਂ ਕਲਾਇੰਟਸ ਨੂੰ ਬਦਲੇ। ਪਲੇਟਫਾਰਮ DNS ਨੂੰ ਗਲੋਬਲ ਟ੍ਰੈਫਿਕ ਸਟੀਅਰਿੰਗ, ਮਲਟੀ-ਰੀਜਨ ਡੈਪਲਾਇਮੈਂਟ ਅਤੇ ਫੇਲਓਵਰ ਲਈ ਵਰਤਦੇ ਹਨ—ਨਾਮ ਥਾਂ ਤੇ ਰਹਿੰਦਾ ਹੈ ਜਦ ਕਿ ਅੰਦਰੂਨੀ ਢਾਂਚਾ ਬਦਲਦਾ ਹੈ।
RFCs ਪ੍ਰੋਟੋਕੋਲ ਵੇਵਹਾਰ ਨੂੰ ਖੁੱਲ੍ਹਾ ਪ੍ਰਕਾਸ਼ਿਤ ਕਰਦੇ ਹਨ ਤਾਂ ਕਿ ਕੋਈ ਵੀ ਉਨ੍ਹਾਂ ਨੂੰ ਇੰਪਲੀਮੈਂਟ ਕਰ ਸਕੇ ਅਤੇ ਅਨੁਕੂਲਤਾ ਜਾਂਚ ਸਕੇ। ਇਹ ਖੁਲ੍ਹਾਪਣ ਵੇਂਡਰ ਲੌਕ‑ਇਨ ਘਟਾਉਂਦਾ, ਬਹੁ-ਵੇਂਡਰ ਇੰਟਰਓਪਰੇਬਿਲਿਟੀ ਨੂੰ ਉਤਸ਼ਾਹਿਤ ਕਰਦਾ ਅਤੇ ਨੈੱਟਵਰਕ ਪ੍ਰਭਾਵ ਬਣਾ ਕੇ ਪ੍ਰਣਾਲੀ ਦੀ ਕੀਮਤ ਵਧਾਉਂਦਾ।
ਨੈੱਟਵਰਕ ਖੁੱਲ੍ਹੇ ਹੋਣ ਕਾਰਨ ਕੋਈ ਵੀ ਤੁਹਾਡੇ ਕੋਲ ਟ੍ਰੈਫਿਕ ਭੇਜ ਸਕਦਾ ਹੈ—ਯਾਨੀ ਅਚਾਨਕ ਸਪੈਮ, ਮੈਲਵੇਅਰ, ਡੀ.ਓ.ਐਸ. ਹਮਲੇ ਅਤੇ ਨਕਲ ਕਰਨ ਵਰਗੀਆਂ ਸਮੱਸਿਆਵਾਂ ਆ ਗਈਆਂ। ਇਸ ਲਈ ਸੁਰੱਖਿਆ ਹੁਣ ਵਿਕਲਪ ਨਹੀਂ ਰਹੀ; ਇਹ ਬੁਨਿਆਦੀ ਤਰੀਕੇ ਨਾਲ ਬਣਾਨੀ ਪਈ।
ਜਿਵੇਂ ਕਿ ਨੈੱਟਵਰਕ ਹਮੇਸ਼ਾਂ ਸੀਮਤ ਅਤੇ ਵੱਖਰੀਆਂ ਪ੍ਰਾਪਰਟੀਆਂ ਰੱਖਦਾ ਹੈ (ਪੈਡਵਿਡਥ, ਲੇਟੈਂਸੀ, ਲਾਸ), ਸਫਲ ਐਪਲੀਕੇਸ਼ਨਾਂ ਛੁਪਕੇ ਕਈ ਚੀਜ਼ਾਂ ਕਰਦੀਆਂ ਹਨ: ਕੈਸ਼ਿੰਗ (CDN), ਸਮਯ-ਸਰਹਦਾਂ ਨਾਲ ਰੀਟ੍ਰਾਈ/ਟਾਈਮਆਉਟ, ਅਤੇ ਐਕਸਪੋਨੇਨਸ਼ੀਅਲ ਬੈਕਆਫ਼ਫ। ਪਲੇਟਫਾਰਮ ਨੂੰ ਇਹ ਧਿਆਨ ਰੱਖਣਾ ਚਾਹੀਦਾ ਹੈ ਕਿ ਨੈੱਟਵਰਕ ਛੋਟੀ ਮਿਆਦ ਲਈ ਅਕਸਰ ਫੇਲ ਹੋ ਸਕਦਾ ਹੈ।