Posts by gull0815
-
-
Quote
OSCAM Cache-EX Tutorial
I was asked to write a little tutorial on howto setup Oscam's CACHE-EX Feature...
What is Cache-EX ?
The Cache-EX feature makes it possible to exchange Oscam's caches from server to server.
Why is Cache useful in general ?
Quite simple. Even without Cache-EX enabled, Oscam builds a cache by default. Every requested ECM by a client is forwarded to an available card or proxy reader. This ECM will stay in Oscam's memory (cache), until its validity expire. On a busy server, you can imagine that there are quite a lot of valid ECM's in memory.
When a second client requests an ECM for the same channel, it will automatically forward the available ECM from local cache, without requesting a reader or proxy, resulting on less load on your cards. Obviously, when its not available from local cache, the request is forwarded to a proxy or card.
You can see answers from Oscam's local cache in your logs.
The reader-name mentioned, is the reader where the ECM originally came from.
2012/03/12 13:06:18 1412EAF0 c USER_A (0100&00006A/5212/64:4A32): cache1 (4 ms) by READER1 (13 of 26) - RTL7 HD
2012/03/12 13:08:50 1412EAF0 c USER_B (0100&00006A/51BD/64:0C7D): cache2 (22 ms) by READER2 (14 of 26) - Sport1 Tennis
2012/03/12 13:08:51 140E5170 c USER_C (0100&00006A/17CC/64:6172): cache2 (133 ms) by READER3 (14 of 26) - EredivisieLive1 HD
2012/03/12 13:08:52 141226A0 c USER_D (0100&00006A/17CC/64:6172): cache2 (190 ms) by READER3 (14 of 26) - EredivisieLive1 HDOK, so why use Cache-EX on top of the normal cache ?
Cache-EX can be enabled by adding a special user to the server, and a special reader to the client with corresponding Cache-EX parameters. This reader and user is only capable of transporting cached-ecm's. When no valid cached-ecm is found on the server, the request is 'rejected'.
The benefit of this method, is that every ECM request on your server will be tried against the cache of your Cache-EX-enabled readers first. The answer on such requests is given very fast, since a server is able to check this in no-time. When no Cache-EX-enabled reader is able to answer the ECM request, the request is forwarded to- and answered by a 'normal' reader.
How-To setup CACHE-EX
Like stated above, Cache-EX can be configured with the 'cacheex' parameter on your user or reader.
To use it, Oscam has to be compiled with CACHE-EX support set to ON.
The Cache-EX-user must have always the same mode configured as the connecting Cache-EX-reader.
--
There are 4 modes you can setup:
cacheex = 1 - cachepull
OSCam A reader1 has cacheex = 1
OSCam B account1 has cacheex = 1
OSCam A gets a ECM request, reader1 send this request to OSCam B,
OSCam B checks his cache:
Not found in cache: return NOK (shows as 'rejected' in logs)
Found in cache: return OK+CW
Not found in cache, but found pending request: wait cacheexwaittime in oscam.conf [global] and check again.
OSCam B never requests new ECMs.
CW-flow = B ---> A
cacheex = 2 - cachepush
OSCam A reader1 has cacheex = 2
OSCam B account1 hastcacheex = 2
If OSCam B gets a CW, its pushed to OSCam A, reader has normal functionality and can request ECMs.
Problem: OSCAM can only push CW's if OSCam A is connected
Problem or feature?: OSCam A reader can request ECMs from OSCam B
CW-flow = B ---> A
cacheex = 3 - reversecachepush
OSCam A reader 1 has cacheex = 3
If OSCam A gets a CW, its pushed to OSCam B. OSCam A never requests new ECMs.
CW-flow = A ---> B
To make a long story short, i tested all modes extensively, and found out that mode 1 is working best.
Example of Mode1 Cache-EX(change) in two directions.
This example creates a bi-directional transport of cache between two servers, with mode 1.
oscam.reader on OSCAM-A:
[reader]
label = OSCAM-B-CACHE
protocol = cccam
device = oscamserverB.com,12000
user = OSCAM-A-CACHE
password = password
inactivitytimeout = 0
cacheex = 1
group = 1
dropbadcws = 1
cccversion = 2.3.0
ccckeepalive = 1
cccreshare = 3
oscam.user on OSCAM-B:
[account]
user = OSCAM-A-CACHE
pwd = password
group = 1
cacheex = 1
cccmaxhops = 10
cccreshare = 1
oscam.reader on OSCAM-B:
[reader]
label = OSCAM-A-CACHE
protocol = cccam
device = oscamserverA.com,12000
user = OSCAM-B-CACHE
password = password
inactivitytimeout = 0
cacheex = 1
group = 1
dropbadcws = 1
cccversion = 2.3.0
ccckeepalive = 1
cccreshare = 3
oscam.user on OSCAM-A:
[account]
user = OSCAM-B-CACHE
pwd = password
group = 1
cacheex = 1
cccmaxhops = 10
cccreshare = 1
Logging and monitoring
You can see traffic flowing from Oscam's log.
For example:
When a cache-ex-request is NOT found in cache, or an invalid SID is requested:
2012/03/12 13:51:13 1412EAF0 c OSCAM-A-CACHE (0100&00006A/51E0/64:C1C8): rejected peer (55 ms) (13 of 25) - Sport1 HD
When a cache-ex-request IS found in cache:
2012/03/12 13:51:07 144716B0 c OSCAM-A-CACHE (0100&00006A/17CC/64:B81C): found (32 ms) by OSCAM-B-CACHE (7 of 16) - EredivisieLive1 HD
Also, you can check an overview of the cache thru the WEB GUI -> http://<oscamserverURL>/cacheex.html
The efficiency of your cache can be measured with the totals displayed on the bottom of Oscam's Users page in the GUI.
My server currently reports:50 1 0 46 36 11 29513 0 186905 3741 24140 0
Meaning.. almost almost 50% of all my request are flowing from cache.Hereby a little tutorial extra only for cacheex = 3 - reversecachepush
QuoteSpecially with the group assign
Hoping I can make it clear with some examples.
Most people make the mistake to use the same setting as they are normal using with sharing
OSCam A reader 1 has local card 1 and is in group 1
OSCam A reader 2 has local card 2 and is in group 2
OSCam Areader 3 has local card 3 and is in group 3
OSCam A reader 4 is a share and is in group 4
OSCam A reader 5 is a share and is in group 4
OSCam A reader 6 has cacheex = 3 --> in which group he is depends on which cache you want to exchange see examples
OSCam A user 1 has cacheex = 3 --> in which group he is depends on which cache you want to exchange see examples
OSCam B reader 1 has local card 1 and is in group 10
OSCam B reader 2 has local card 2 and is in group 20
OSCam B reader 3 has local card 3 and is in group 30
OSCam B reader 4 is a share and is in group 40
OSCam B reader 5 is a share and is in group 40
OSCam B reader 6 has cacheex = 3 --> in which group he is depends on which cache you want to exchange see examples
OSCam B user 1 has cacheex = 3 --> in which group he is depends on which cache you want to exchange see examples
Example 1:
OSCam A reader 6 has cacheex = 3 and will connect with OSCam B on user 1: user 1 = group 40,50 and has cacheex = 3
So the cache pushing can begin
If server Oscam A only wants to exchange his cache from his local cards than the group settings should be
OSCam A reader 6 group 1,2,3 ---> now OSCam B will recieves only cache from the local cards and shares this to users that are in group 40,50
Reverse cache
So the cache will flow from OSCam A ---> OSCam B
Example 2
OSCam A reader 6 has cacheex = 3 and will connect with OSCam B on user 1: user 1 = group 20,40,50 and has cacheex = 3
So the cache pushing can begin
If server Oscam A wants to exchange his cache from his whole server than the group settings should be
OSCam A reader 6 group 1,2,3,4 ---> now OSCam B will recieves all cache and shares this to users that are in group 20,40,50
So on server OSCam B all user that are in groups 20,40,50 are able to use the recieved cache
Reverse cache
So the cache will flow from OSCam A ---> OSCam B
Example 3
If OSCam B wants to exchange his own cache and the cache he recieves from other Oscam servers (Oscam A see example 2)
OSCam B made a group only for cacheex this is group 50 (see example 2)
OSCam B reader 6 has cacheex = 3 and will connect with OSCam C on user 1: user 1 = group 15 and has cacheex = 3
So the cache pushing can begin
If server OSCam B wants to exchange his cache from his whole server, than the group settings should be
OSCam B reader 6 group 10,20,30,40,50 ---> now OSCam C will recieves all cache and shares this to users that are in group 15
So on server OSCam C all user that are in groups 15 are able to use the recieved cache also readers on OSCam C with cacheex 3 will be able to use the recieved cache and can push this forward
So the cache will flow from OSCam A ---> OSCam B ---> OSCam C
-
Use Oscam with CCCam Protocol
and
disablecrccws
or
disablecrccws_only_for
-
Checkout the last Simplebuild
Codecd /opt/ svn co https://github.com/gorgone/s3_releases.git/trunk/ s3 cd s3 chmod 777 s3 ./s3 menu
All available Toolchains
https://s3.is-by.us/toolchains.cfg/
just copie to -> /opt/s3/support/toolchains.cfg/
then
example
./s3 rasp_soft
-
You need a new "patch"
Copy the "patch" to /opt/s3/patches
./s3 menu
-->"CONFIGURE"
--> "BUILD_EXTRA"
--> select "USE_PATCH"
-
wget -O simplebuild – http://s3.is-by.us/now.sh | bash
is for "new" Simplebuild3 RC1 it´s not finished jet.
Use last Simplebuil 3 beta (s3.14-03-2017.15.19.01)
Just unpack attached tar.gz file and send files to your server to /opt/s3.
Then enter:
cd /opt/s3
./s3
This will install all necessary software that you need for compiling OScam. When installed just start application by entering:
./s3 menu -
No new File/ipk ?
-
-
WICARDD 1.19 gemini 4.7 (GP1)
-
Dream 920 is OE2.5
VU+ is OE2.0
Dream has a good support -
-
oscam.server
[reader]
label = Canal Digitaal NL
protocol = internal
device = /dev/sci0
caid = 0100
detect = cd
mhz = 500
cardmhz = 357
ident = 0100:00006A
group = 1
emmcache = 1,1,0
ratelimitecm = 4
ratelimittime = 9000
ecmunique = 1
srvidholdtime = 2000
cooldown = 30,600
srvidholdtime = 0oscam.dvbapi
P: 0100:00006A
I: 0 -
-
-
-
-
CCCam for sh4 does not exist, only a modified MGcamd
-
Nothing new just a 230 compiled for arm thats all
I think its a 2.1.2 compiled for arm
-
mouse Protokoll
protocol = mouse
device = /dev/ttyUSB0smartreader Protokoll
protocol = smartreader
device = Serial:Reader XXXXXXxsmargo Protokoll
protokoll = smargo
device = /dev/ttyUSB0 -
http://winfuture.de/news,10164…&utm_campaign=SocialMedia
QuoteAbo-Sender Sky bereitet Abschied von der Satelliten-Übertragung vor
Der Abo-Sender Sky kam zuletzt auf ein zufriedenstellendes Geschäftsergebnis, auch in Sachen Kundenwachstum kann man sicherlich zufrieden sein. Allerdings weiß das britische Unternehmen auch, dass das aktuelle Geschäftsmodell nicht mehr ewig halten wird, zu groß ist die Konkurrenz von Netflix und Co.
Sky ist durch Satellitenfernsehen groß geworden. Doch diese Art der TV-Übertragung hat keine allzu guten Zukunftsaussichten, das weiß man sicherlich auch beim Bezahlsender. Entsprechend laufen dort auch schon Bemühungen, auf den Vertriebsweg Internet umzustellen und zwar komplett.
Laut The Register signalisiert Sky das "Ende für die Satelliten-Schüssel", man plant, alle Kanäle und Inhalte online zur Verfügung zu stellen. Den Anfang macht man in Italien, wenig später soll Österreich mit einem neuen Online-Angebot folgen.
Die Vorteile einer Online-"Übertragung" liegen auf der Hand, wie auch Sky einräumt. Dadurch lassen sich Kosten sparen und man bekommt ebenso Zugang zu neuen Märkten und somit auch Kundengruppen. Nach den beiden ersten Ländern will man den IP-basierten Dienst auch in anderen Schlüsselmärkten bereitstellen, einen genauen Zeitplan nannte das Unternehmen aber nicht.
Die Geschäftszahlen passen
Die Zahlen selbst sind für Sky noch mehr als zufriedenstellend, die Anzahl der Abonnenten in Deutschland und Österreich konnte das Unternehmen von fünf auf 5,2 Millionen steigern. Insgesamt zählt Sky knapp 23 Millionen regelmäßig zahlender Kunden. Europaweit konnte man im ersten Geschäftshalbjahr den Umsatz auf rund 6,7 Milliarden Pfund steigern, das ist ein Plus von etwa fünf Prozent.
Usability-Hölle
Beim Umstieg auf IP-basierte Übertragung wird das Unternehmen sich aber einige Mühe geben müssen: Denn man hat sich schon bisher an Netflix-artigen Plattformen versucht, überzeugen konnte aber keine davon. Vor allem an der Benutzbarkeit der On-Demand-Angebote muss Sky noch arbeiten, denn aktuell kann man das nur mit Usability-Hölle umschreiben. Sky