การทำงานก็เหมือนการบีบอัดไฟล์ในระบบคอมพิวเตอร์ปกติ แต่จะมีอัตราการบีบอัดที่ต่ำกว่า เพื่อใช้เวลาในการบีบอัดเร็วขึ้น การบีบอัดตามมาตรฐาน http มีอยู่ 3 แบบคือ
- GZip (GNU Zip) มีการประกาศรูปแบบใน RFC1952 เป็นการเข้ารหัสแบบ Lempel-Ziv (LZ77) พร้อมตรวจสอบด้วย CRC ขนาด 32 บิต
- compress เป็นการประยุกต์ใช้งาน compress ใน UNIX ซึ่งเป็นแบบ Lempel-Zip-Welch (LZW)
- deflate มีการประกาศรูปแบบใน RFC1950 เป็นการเข้ารหัสด้วย zlib และผสมกับ deflate ซึ่งประกาศใน RFC1951
โดย http server ที่รองรับการบีบอัดได้แก่
- Internet Information Service (IIS) รองรับทั้ง gzip และ deflate
- Apache รองรับทั้ง gzip และ deflate
- Resin รองรับ gzip
- Lighttpd รองรับ gzip และ deflate
- Nginx รองรับ gzip และ deflate
- Sun Java Web Server รองรับ gzip
- Zeus รองรับ gzip
- Cherokee รองรับ gzip และ deflate
จากรูปเป็นการทดลองปิดการใช้งาน gzip ใน nginx เป็นเวลา 2 วันจะเห็นว่า connection ปริมาณเท่าเดิม แต่ในช่วงที่ทำการทดลองปิด gzip นั้นปริมาณ Bandwidth เพิ่มขึ้นมากหลายเท่าตัว ซึ่ง gzip นั้นช่วยลด bandwidth ลงได้หลายเท่าตัวนั่นเอง