Postfix - queue sorrend szabályozás vagy per user sebesség kvóta?

Sziasztok!

Tud nekem valaki jó megoldást mondani az alábbi problémára?

Adott egy postfix szerver, ami ADSL-en keresztül, ISP smarthost segítségével továbbítja a leveleket a külvilág felé.

Sajnos néha előfordul, hogy egy-két user nagy mennyiségű és méretű levéláradattal árasztja el. Ezt kellene szabályozni.

Pontosabban vagy a kissebb leveleket kellene előrevenni a sorban, vagy ha a usernek sok levele van már kézbesítetlenül a sorban, akkor visszavenni az ő levélküldési sebességét.

Oldotta meg már ezt valaki?

Köszi!

Swifty

Hozzászólások

+

Senki?

--
Debian Linux rulez... :D

A méret korlátozást már megtette az ISP 20MByte-ban.
Sajnos a nem "spam"-elünk nem igazán jön be, mert alvállalkozóknak kell kiküldeni terveket, és sajnos sem a userem, sem az ő alvállalkozói sem tudják használni a céges FTP szervert... :(

Sajnos ezeken a lépéseken már túl vagyok... De azért köszi! :D
--
Debian Linux rulez... :D

Hello,

csak okoskodás, nem csináltam még ilyet.
A Postfix 2.3 tud per-sender relayhost-ot: http://www.postfix.org/SOHO_README.html.
A küldő (ha állandó) ily módon szabályozható, hogy merre menjenek a levelek.
Tudsz a master.cf-ben létrehozni több smtpd processzt (nem használt portra bind-olod), mindegyiknek saját konfiggal - nem mindent tudsz szabályozni!
De tudsz pl max kliens kapcsolatszámot szabályozni, ezzel pedig elvileg elérted acélod, ha jól gondolom :)

a.

Ezt még nem próbáltam...
Igazán azt hiszem, ez sem lesz jó, mert az ISP-re relayhost-olok... És abból 1 db van.
A processzek száma itt mindegy, mert van concurrency limit... Ugye annak nincs értelme, hogy több szálon menjenek ugyanoda a levelek, és adott esetben csak lassítsák egymást..

Köszi neked is az ötletet! :D
--
Debian Linux rulez... :D

Ha jól értem azt szeretnéd, hogy a queue az valójában ne is egy queue legyen, hanem valami szabályzott dolog, ahol te pl. meg tudod szabni, hogy a kisebb méretű leveleket tegye előre és próbálja előbb kézbesíteni.
Namost szerintem nem megvalósítható (de ha tud rá valaki módszert, én is megnézném). Másrészt, ha meg is csinálod... Ha egy nagy levél megy ki több címzettnek, az többnyire úgy történik, hogy egy mailban lesznek megadva a címzettek, nem pedig annyiszor lesz feladva a levél egy címzettel, ahány embernek megy. Ez esetben ez a queue-ba egy darab levélnek számít, akkor tekinthető kézbesítettnek, ha minden címzett megkapta. De ilyenkor ugye az SMTP sorba veszi a fejlécben szereplő címzetteket, és megpróbálja mindnek kézbesíteni. Olyat biztosan nem fogsz tudni elérni, hogy mondjuk 10 címzettenként álljon meg, és nézzen a queue-ból egy másik levelet, ezt meg majd folytatja.
A "küldési sebesség befolyásolás" alatt nem tudom mit értesz, bandwith limit nincs smtp-be, úógy küldi, ami kifér :).
Két dolgot tudsz tenni: message_size_limit illetve smtpd_recipient_limit, lentebb veszed mindkettőt. Ezzel eléred azt, hogy mondjuk Max. 5MB lehet a levél, és mondjuk max. 10 címzettje lehet egyszerre. Ez még nyilván nem a prioritásos dolog, amit te írtál, de legalább nem áll le egy 20MB-os maillel meg 500 címzettel 20 percig az smtp, és addig ugye a queue többi levele vár, hanem ezt kisebb mennyiséget hamarabb elviszi és továbblép. Persze ha egymás után jönnek ezek a nagy levelek, akkor majdnem ugyanott vagy, de ha a nagyok közé bekerül egy-két kicsi, akkor talán előrébb vagy :)

Na ezt a két mondatos mondanivalót sikerült jól elnyújtani :)
--
Discover It - Have a lot of fun!

...az többnyire úgy történik, hogy egy mailban lesznek megadva a címzettek, nem pedig annyiszor lesz feladva a levél egy címzettel, ahány embernek megy.

Ezt azért gondold át még egyszer...:)
Nem lesz "annyiszor feladva" (bár ez is klienstől függ, és most nem az Outlook Express vagy Thunderbird programokra gondolok), de mikor a kliens kapcsolódik, és az 'envelope' fejléceket küldi, ott egyesével felsorolja. Tök semmi kapcsolat nincs (pontosabban nem kell, hogy legyen) az envelope fejlécek és a mailben található (MIME) fejlécek között.

http://www.cns.utoronto.ca/usg/technotes/smtp-intro.html

a.

Szerintem ugyanazt mondjuk. :)
"az többnyire úgy történik, hogy egy mailban lesznek megadva a címzettek"
Tehát:


mail header...
címzett: a@b.hu, b@b.hu, c@c.hu...
mail header...
mail törzs

nem pedig


mail header...
címzett: a@b.hu
mail header...
mail törzs

mail header...
címzett: b@b.hu
mail header...
mail törzs

mail header...
címzett: c@c.hu
mail header...
mail törzs

...
--
Discover It - Have a lot of fun!

Ha jól értem azt szeretnéd, hogy a queue az valójában ne is egy queue legyen, hanem valami szabályzott dolog, ahol te pl. meg tudod szabni, hogy a kisebb méretű leveleket tegye előre és próbálja előbb kézbesíteni.

Azt hiszem, megértetted a problémám! :D

A usernek sikerült elmagyarázni, hogy létezik a titkos másolat funkció. Ezzel kevesebb helyet foglal a sorban, illetve az elküldött elemek között sem lesz 60 db ugyanolyan levél.
Viszont van, ahová más nagy levelet kell kiküldeni.

Tehát:

User1 sok, nagy levelet küld.
User2 kicsi, de fontos levelet küld.
Amíg a queue-ból nem megy ki a sok nagy levél, addig a kicsi sem jut ki!
A címzettek száma nem számít, mert smarthost-ozok az ISP-vel. (Tehát nem az én szerverem próbálja meg a címzettekhez eljuttatni a levelet.)

From: user1
To: x#x.hu, y#y.hu, z#z.hu, a#a.hu
Subject: Tervek - ajtó
Attachment: a.pdf, b.pdf, c.pdf
Size: 6MB

From: user1
To: y#y.hu, z#z.hu, b#b.hu
Subject: Tervek - kapu
Attachment: d.pdf, e.pdf, f.pdf
Size: 12MB

From: user1
To: r#r.hu, s#s.hu, t#t.hu
Subject: Tervek - ablak
Attachment: t.pdf, q.pdf, s.pdf
Size: 18MB

From: user2
To: zz#zz.hu
Subject: Fontos iratok
Size: 20KB

--
Debian Linux rulez... :D

Hát ha ilyen vegyesek a userek, akkor nem nagyon lehet lekorlátozni, ha muszáj nagy méretű leveleket küldeni... Esetleg azoknak a usereknek, akik kis levelet küldenek, azoknak nem lehetne közvetlenül beállítani az ISP SMTP-jét? Vagy a másik lehetőség, hogy a helyi szerveren indítasz egy másik SMTP-t, és akik kicsi levelet küldenek többnyire, azoknak azt állítod be.
Egybként sose értettem, hogy ilyen nagy fájlokat miért emailben kell küldeni. Tudom, ez már workaround, de az nem lenne megoldható, hogy mondjuk nem emailbe küldik, hanem akár samba megosztáson feltöltik a helyi szerverre, amit egy http linkkel el tudnak érni, és le tudják tölteni a fájlokat? És emailbe pl. csak a linket küldenék el.
--
Discover It - Have a lot of fun!